黑马程序员技术交流社区
标题:
高级for循环
[打印本页]
作者:
鲁中需
时间:
2012-10-24 20:31
标题:
高级for循环
本帖最后由 鲁中需 于 2012-10-25 21:58 编辑
for循环与高级for循环(foreach循环)的区别是什么?能用高级for循环来修改数据吗?在取集合中的元素是可以用迭代器迭代也可用高级for循环取元素,这两种方法又有何区别?
作者:
毛标
时间:
2012-10-24 20:45
增强for只能遍历不能查询
传统for循环可以查询指定位置上的元素 foreach只能间接的遍历map
迭代器除了遍历还可以进行remove操作,如果是listiterator还可以在遍历的过程中进行增删操作
作者:
廖智
时间:
2012-10-24 20:55
增强for循环只能用于遍历数组或者Collection集合。
只能用于遍历获取元素,不能进行更多的操作。
作者:
刘丽娜
时间:
2012-10-24 21:16
增强for循环的内部也就是调用iteratoer实现的(可以查看编译后的文件),但是增强for循环 有些缺点,例如不能在增强循环里动态的删除集合内容。不能获取下标等。
2.ArrayList由于使用数组实现,因此下标明确,最好使用普通循环。
3.而对于 LinkedList 由于获取一个元素,要从头开始向后找,因此建议使用 增强for循环,也就是iterator。
具体内容可查看此文章:http://blog.csdn.net/yinzhuo1/article/details/7302351
里面有例子 讲的很详细 谢谢
作者:
给生活加点料
时间:
2012-10-24 21:36
增强for只能遍历不能查询 不能有其他操作了。
传统for循环可以查询指定位置上的元素
迭代器迭代也可用高级for循环取元素区别:
增强for 只能遍历。
迭代器除了遍历之外还可以remove
如果是List集合中的ListIterator 还可以进行增删等更多操作。
作者:
鲁中需
时间:
2012-10-24 22:22
刘丽娜 发表于 2012-10-24 21:16
增强for循环的内部也就是调用iteratoer实现的(可以查看编译后的文件),但是增强for循环 有些缺点,例如不能 ...
嗯,受教了,谢谢。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2