有人可以向我解释为什么Iterator<E> iterator();
中定义的方法java.util.Collection
?集合已经扩展java.lang.Iterable
;这种方法是多余的。这是为了方便吗?
答案 0 :(得分:11)
使用Collections API在Java 1.2中引入了Collection
interface。那时存在iterator
方法。但是,直到Java 1.5才引入Iterable
interface。 Collection
明确定义iterator
的原因是因为它早于Iterable
。 Collection
返回Iterator
的想法早于Iterable
的想法。