首先,我们要知道,迭代器的主要作用是用来遍历集合的
如下图,我们用ArrayList集合来举例
我们可以看到,使用迭代器遍历集合时,我们得先调用集合的 iterator() 方法获取迭代器对象,然后通过迭代器对象使用 hasNext() 方法,来判断集合内是否还有元素,它的底层源码是这样的
size我们可以看作是集合的元素个数,cursor可以看作是我们遍历到第几个元素了,然后通过比较两个数值的大小,返回boolean值,来判断集合中是否还有下一个元素,如果返回值是true,则继续执行next() 方法,将元素取出,它的底层源码如下
这样,就可以遍历集合了
注意:
1.如果在遍历集合中,某些情况下,我们要增加,删除元素,只能用迭代器自身的增删方法,不能用集合对象操作。
2.增强for循环底层也是迭代器原理