方法iterator()在java.util.Collection和java.lang.Iterable中声明,它的超级接口?

时间:2015-11-13 16:54:04

标签: java collections

有人可以向我解释为什么Iterator<E> iterator();中定义的方法java.util.Collection?集合已经扩展java.lang.Iterable;这种方法是多余的。这是为了方便吗?

1 个答案:

答案 0 :(得分:11)

使用Collections API在Java 1.2中引入了Collection interface。那时存在iterator方法。但是,直到Java 1.5才引入Iterable interfaceCollection明确定义iterator的原因是因为它早于IterableCollection返回Iterator的想法早于Iterable的想法。