java - 如果该方法返回枚举,则从 ArrayList 返回什么值?

标签 java arraylist vector enumeration

所以我目前正在将一些使用 Vector 的旧代码升级到 ArrayList 中,并且不确定使用什么来替换旧的 vector 段。

public Enumeration enumerateMapping() {
    return mappingList.elements();
}

我需要将 .elements() 替换为 ArrayList 等效项。如果有人碰巧知道这些内容的翻译链接,那也会非常有帮助。

最佳答案

ArrayList (和大多数 Collection s)实现 Iterable ,所以你应该返回 iterator() :

public Iterator enumerateMapping() {
    return mappingList.iterator();
}

最好使用泛型类型而不是原始类型,即 Iterator<ElementType> .

作为Enumeration Javadoc建议,推荐使用Iterator而不是Enumeration :

NOTE: The functionality of this interface is duplicated by the Iterator interface. In addition, Iterator adds an optional remove operation, and has shorter method names. New implementations should consider using Iterator in preference to Enumeration.

关于java - 如果该方法返回枚举,则从 ArrayList 返回什么值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38831599/

相关文章:

iphone - 如何计算两个向量的平均方向

c++ - 使用 std::vector<Eigen::MatrixXd> 进行内存管理

c++ - 解释器的良好优化

java - Android Studio 4完整的离线设置

java - 在 ArrayList 中查找项目索引的更好方法?

java - 排除 Spring MVC Controller 的请求映射中的某些路径

java - 检查字符串包含数组列表中的属性

java - 为什么是Arraylist<>。 sublist() 未映射到用户定义的数据类型 arraylist<>?

java - Java 中的 HashMap 无法散列 MyObject

java - Java 中检查 S3 存储桶是否具有与通配符模式匹配的键的对象的方法