java中迭代器遍历有点不懂呀

我的问题是这样的,两种遍历集合方式,第一种是for循环,我是这么理解的,定义了一个上帝类的变量obj,它可以接受任何类的值,所以把集合A的没一项赋给变量obj,然后打印,赋一次就打印一次,很简单就遍历了。。。。
问题主要是第二种,迭代器,我能明白while里面的意思,就是用迭代器Iterator这个接口类创建的变量去调用hasNext和next方法,一个判断,一个输出,主要不明白这行代码的意思:Iterator iterator=A.iterator();
就这句有点理解不了。。。。。。有没有大神可以讲解一下。。。我是初学者,谢谢谢谢
import java.util.ArrayList;
class Aft33{
public static void main(String[] args){
ArrayList A=new ArrayList();
A.add("4");
A.add("7");
A.add("你");
A.add("我");
A.add("他");
A.add("开心");
sop(A);
//第一种遍历集合的方式
for(Object obj:A){
sop(obj);
}
//使用集合的迭代器进行遍历
Iterator iterator=A.iterator();
while(iterator.hasNext()){
sop(iterator.next());
}
}
public static void sop(Object obj){
System.out.println(obj);
}
}

集合的迭代器这里其实隐藏有指针
每次next,指针都会向后自移动一位,并返回元素

增强for是迭代器迭代的语法糖,两者本质是一样的哦!
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答