为什么Iterator接口不扩展Iterable?
Iterator
Iterable
该iterator()方法可以简单地返回this。
iterator()
this
是故意的还是只是 Java 设计者的疏忽?
能够使用带有迭代器的 for-each 循环会很方便,如下所示:
for(Object o : someContainer.listSomeObjects()) { .... }
wherelistSomeObjects()返回一个迭代器。
listSomeObjects()
因为迭代器通常指向集合中的单个实例。Iterable 意味着可以从一个对象获取一个迭代器来遍历它的元素——并且不需要迭代单个实例,这就是迭代器所代表的。