本帖最后由 刘旭 于 2012-3-24 22:21 编辑
在抽象类AbstractList里面定义的内部类 private class Itr implements Iterator<E>里面定义了取得数据的next hasNext 等方法,而此抽象类的Iterator方法代码如下:
public Iterator<E> iterator() {
return new Itr();
}即返回了一个迭代器。
此抽象类实现了Iterable<E>, Collection<E>, List<E>接口,ArrayList又继承了AbstractList,所以,它具有iterator方法,而iterator方法又有取出List集合中元素的方法。
这是特定与List接口的迭代器。在HashSet TreeSet中也有相应的特定于自己的迭代器。
具体情况请查看源代码。 |