黑马程序员技术交流社区
标题:
传统for和高级for有什么区别呢?
[打印本页]
作者:
cuisq
时间:
2016-6-11 11:43
标题:
传统for和高级for有什么区别呢?
传统for和高级for有什么区别呢?
1. 增强for对集合进行遍历,集合不能为空。只能获取集合元素,但是不能对集合进行操
作。高级for有一个局限性,必须要有被遍历的目标。 2. 迭代器除了遍历,还可以进行remove集合中元素的动作。 如果是用ListIterator,还可以在遍历过程中进行增删改查的动作。
建议在遍历数组的时候,还是希望是用传统for。因为传统for可以定义角标。 1.增强for循环和iterator遍历的效果是一样的,也就说增强for循环的内部也就是调用iteratoer实现的,但是增强for循环有些缺点,例如不能在增强循环里动态的删除集合内容。不能获取下标等。
2.ArrayList由于使用数组实现,因此下标明确,最好使用普通循环。
3.而对于 LinkedList由于获取一个元素,要从头开始向后找,因此建议使用 增强for循环,也就是iterator。
作者:
Fangjie
时间:
2016-6-11 12:14
传统for比增强for写法稍微麻烦点,但是传统for可以操作角标,二增强for只能进行遍历
作者:
java小白怕不
时间:
2016-6-11 21:53
感觉层主的 一句话 很有概括性/
作者:
ylw787442926
时间:
2016-6-11 22:33
反正知道高级的比低级的好些,就是高级的有限制,貌似只能便利集合什么的
作者:
Kingchen
时间:
2016-6-11 23:00
顶一个!!!
作者:
wby127889561
时间:
2016-6-12 08:45
高级for只能遍历数组集合,不过他省代码
作者:
马庆伟
时间:
2016-6-12 09:10
增强for可以节省代码,但是好像是没有角标的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2