黑马程序员技术交流社区

标题: 关于曾强for的问题 [打印本页]

作者: 梁宝昌    时间: 2014-8-28 20:36
标题: 关于曾强for的问题
增强for和普通for有什么区别呢 有些不理解
作者: 冷锋也温柔    时间: 2014-8-28 21:06
增强for 是对数组 集合 IO流的元素进行遍历的 它是基于迭代器的 简单 方便  普通for一般对基本类型的进行操作 也可以对数组 集合  IO遍历但是麻烦
作者: 心?=忐§忑]    时间: 2014-8-28 21:42
高级for是JDK1.5才出来的新特性,它的底层还是基于迭代器的原理,可以对集合,数组进行遍历;
普通for循环是则可以对集合,数组或者是完成任何循环的操作,而且指定循环次数,在遍历的时候需要获取数组,集合的长度,高级for则就不需要获取长度,直接对元素进行操作,这点比较优越;高级for对集合操作的时候会发生并发修改异常,普通for则没有;应该就这样了吧!!!
作者: careit    时间: 2014-8-28 21:58
在语法特点上来看:
普通for循环
for(int i=0;i<num;i++){  
   执行代码;//通过下标索引
  }
增强for循环
for (Type  t:数组和实现了java.lang.Iterable接口的类的实例){
     执行代码;
     //尽可通过t逐个访问实例中的数据,无法使用下表,只读
}
作者: 小子考驾照    时间: 2014-8-28 22:00
在后面还有增强for?还是就前面的一些啊,不会还有复杂的吧,紧张学习中
作者: liqi    时间: 2014-8-28 22:08
以集合来举例
for( 集合中元素类型  类型对象: 集合)
{
     对这个对象操作
}

如: ArrayList<String> lists = new  ArrayList<String>();
for(String list : lists)
{
    System.out.println(list);   //普通for(遍历的下标){ arr[x]  }
}
作者: 927233671    时间: 2014-8-28 22:21
高级for有局限性,必须有被遍历的目标
作者: idency    时间: 2014-8-28 22:50
首先格式上就不一样!再者增强for是为了替换掉Iterator而出现的!在不需要操作角标的迭代中,使用增强for遍历更加方便和简单!
作者: Sakuratossi    时间: 2014-8-29 00:11
增强for不能像普通for一样根据角标操作相邻的数组元素,但是对于简单的按顺序遍历很好用,在集合中用比iterator方便很多




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