如果 Collection 定义了 hasNext() 而不是 iterator().hasNext(),我们可以更轻松地编写循环:
while(collection.hasNext()){…}
代替:
Iterator it= collection.iterator();
While(it.hasNext()){…}
当然,我知道存在循环 for(E e:collection)
的简单方法。
为什么接口(interface) Iterator 存在?
最佳答案
因为对于同一个 Collection
对象,您可以同时拥有多个有效的 Iterator
对象。
这很有用。如果 Collection
定义了 next
和 hasNext
方法,则此方法将被排除。
关于java - 为什么java.util.Collection不直接定义next(), hasNext()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3623434/