作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个包装 TreeMap 的 MyMap 类。(假设它是狗的集合,键是字符串)。
public class MyMap {
private TreeMap<String, Dog> map;
...
}
我想使用 for-each 循环将 MyMap 变成可迭代的。我知道如果我的类是 LinkedList 包装器我会怎么做:
public class MyList implements Iterable<Dog> {
private LinkedList<Dog> list;
...
public Iterator<Dog> iterator() {
return list.iterator();
}
}
但是这样的解决方案不适用于 TreeMap,因为 TreeMap 没有 iterator()。那么如何使 MyMap 可迭代?
同样的问题,除了 MyMap 包装了 HashMap(而不是 TreeMap)。
谢谢。
最佳答案
public Iterator<Dog> iterator() {
return map.values().iterator();
}
关于java - 如何为 TreeMap 和 HashMap (Java) 创建一个可迭代的包装器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2051677/
我是一名优秀的程序员,十分优秀!