黑马程序员技术交流社区

标题: 增强for [打印本页]

作者: 张邦庆    时间: 2011-11-6 22:32
标题: 增强for
增强for与Iterator的区别,为什么不按插入的顺序输出呢?
作者: 肖瑞军    时间: 2011-11-6 22:34
1.手先增强for循环和iterator遍历的效果是一样的,也就说
增强for循环的内部也就是调用iteratoer实现的,但是增强for循环 有些缺点,例如不能在增强循环里动态的删除集合内容。不能获取下标等。
2.ArrayList由于使用数组实现,因此下标明确,最好使用普通循环。
3.而对于 LinkedList 由于获取一个元素,要从头开始向后找,因此建议使用 增强for循环,也就是iterator。
作者: 张邦庆    时间: 2011-11-6 22:45
Ok、Thanks!
作者: 邱本超老师    时间: 2011-11-6 22:49
Iterator 主要性能开销在next方法体,其一:对记录集进行检测,如果在迭代的过程中,记录集有被修改,会抛出异常;其二:next方法体内有try...catch方法体,这也会影响性能,JVM不能对try...catch块内的代码进行优化。
而for因为不管数据被中途修改,也不进行异常处理,可能速度会快点吧
作者: 魏兴发    时间: 2011-11-7 09:36
学习了!!来黑马论坛吸收了很多营养啊!!O(∩_∩)O~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2