为了账号安全,请及时绑定邮箱和手机立即绑定

java中for循环和iterator迭代的区别

java中for循环和iterator迭代的区别

慕虎7371278 2019-02-19 13:13:07
java中for循环和iterator迭代的区别
查看完整描述

2 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

记录的存取方式有两种:一种是顺序存储,另一种是链接存储
对于顺序存储的记录可以根据其下标找到对应的记录,而链接存储(拿单链表为例)
则必须找到其前一个记录的位置才能够找到本记录。

所以for循环便于访问顺序存储的记录,比如数组等
而迭代则更适用于链接存储的记录,虽然Java中有些底层通过链接存储原理实现的集合
也可以通过下标获取指定的记录,但是其每次都必须从链表头开始查找记录,这样会影响查找的效率

查看完整回答
反对 回复 2019-03-02
?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

for循环是语言中循环控制结构。
而iterator则是用来遍历集合中的元素。本身是不能够循环遍历需要借助循环控制语句进行迭代元素。
个人认为iterator封装了循环体遍历元素的细节,使得编程人员无需关心集合结构,以及访问元素的操作。
例如:
for(int i=0;i<size;i++){
Object o=list.get(i);//List遍历元素
}
for(int i=0;i<size;i++){
Object o=objects[i];//数组遍历元素
}
而对iterator来说,使用一个统一的接口来访问具体的集合元素.
while(iterator.hasNext()){
Object o=iterator.next();//统一的接口来访问具体的集合元素.
}
说到这,相信你对iterator和for语句有一个新的认识了吧!


 


查看完整回答
反对 回复 2019-03-02
  • 2 回答
  • 0 关注
  • 621 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信