黑马程序员技术交流社区

标题: 关于一般的for循环和高级for循环的区别 [打印本页]

作者: 凉仁日记    时间: 2015-5-26 16:20
标题: 关于一般的for循环和高级for循环的区别
  一般的for循环需要事先知道循环的次数,而高级for则不需要。(高级for出现于jdk1.5版本以后)
      另外高级一般的for循环用来遍历数组,而高级for可以遍历数组和集合等,当然遍历集合的时候你也可以用迭代器的方法,(其实高级for的底层原理就是Interator迭代器的迭代原理)不过,综合而言,如果你使用高级for的话会使你的代码短小精悍,优雅许多。如果没有特殊需求的情况下,一般推荐使用增强for。(另外,java版本的升级带来的新特性无非是从三方面入手:提高效率,简化书写,提高安全性。显然增强for就是为了简化书写嘛)
      当然,增强for也是有一些弊端的,例如,在循环中你无法知道当前元素的位置的。如果增强for用来遍历ArrayList集合中的元素,并在遍历中增删元素的话会发生异常的,所以ArrayList定义了自己的迭代器ListIterator来解决这个问题。
作者: 城北一直晴。    时间: 2015-5-26 17:32
不错,支持!




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