方法iterator()在java.util.Collection和java.lang.Iterable中声明,它的超级接口?
有人可以向我解释为什么方法Iterator iterator();
在java.util.Collection
定义? 集合已经扩展了java.lang.Iterable
; 这种方法是多余的。 这是为了方便吗?
Collection
接口是在Java 1.2中使用Collections API引入的。 然后存在iterator
方法。 但是,直到Java 1.5才引入Iterable
接口 。 Collection
显式定义iterator
的原因是因为它早于Iterable
。 Collection
返回Iterator
的想法早于Iterable
的想法。