由于 Iterator 是具有 hasNext()、next() 和 remove() 方法的接口。但是 Java 类中所有这些方法的实现在哪里呢?
问问题
204 次
2 回答
6
几乎每个具体集合都有自己的实现,并针对该特定集合进行了优化。您不必担心细节。但这里有一些例子:
LinkedList
-class ListItr implements ListIterator<E>
ArrayList
-class ListItr extends Itr implements ListIterator<E>
HashSet
- 实际上支持HashMap.keySet()
因为Iterator
是一个接口,你可以用它做一些花哨的事情,比如包装和装饰它,而不用关注实际的实现。
于 2012-07-11T11:29:15.787 回答
1
Iterator
接口被实现为实现接口的类/接口中的内部和私有(应该但不一定)类。-方法允许一个对象成为“foreach”语句的目标。 java.lang.Iterable<T>
Iterable<T>
Iterator<T> iterator()
有关更多信息,请阅读 @Andreas Grech 的博客:Java 的迭代器和迭代器
于 2012-07-11T11:46:26.133 回答