for(元素类型t 元素变量x : 遍历对象obj){ 引用了x的java语句;}怎样理解?

这种有冒号的for循环叫做foreach循环,foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供了极大的方便。
foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何的foreach语句都可以改写为for语句版本。
foreach并不是一个关键字,习惯上将这种特殊的for语句格式称之为“foreach”语句。从英文字面意思理解foreach也就是“for 每一个”的意思。实际上也就是这个意思。

foreach的语句格式:
for(元素类型t 元素变量x : 遍历对象obj){
引用了x的java语句;
}
示例代码:
List list = new ArrayList();
list.add(“1”);
list.add(“2”);
list.add(“3”);
for (String x : list) {
System.out.println(x);
}
Object s[] = list.toArray();
for (Object x : s) {
System.out.println(x.toString()); //逐个输出数组元素的值
}

这种写法是增强for循环,
for(int i = 0;i < s.length(); i++){
String str = s[i]; //当成数组的写法
}
编译器会认为:
1.创建名称为str 的String变量。
2.将s的第一个元素赋给str 。
3.执行重复的内容。
4.赋值给下一个元素str 。
5.重复执行至所有的元素都被运行为止
优点:
这种写法让我们代码看起来更加的简洁
缺点话:

  1. 只能顺次遍历所有元素,无法实现较为复杂的循环
    2对于数组,不能方便的访问下标值;
    3对于集合,与使用Interator相比,不能方便的删除集合中的内容(在内部也是调用Interator).
    4 除了简单遍历并读取其中的内容外,不建议使用增强的for循环

java 1.5以后的新特性,也叫foreach 语法。可以非常方便的遍历集合,数组。
很容易理解,for (String str : s){} 在for的条件中,String str前面的是new出来的临时变量,生存周期仅在本次循环中,这个变量的值是 集合 “S” 第N次循环第N个位置的元素(访问序号为N-1)。
可以看成这样的:
String[] s = …; s是一个已存在的字符串数组
for(int i = 0; i < s.length; i ++){
String str = s[i];
//下面是操作
}

相当于调用迭代器 Iterator 遍历的简单写法 ,是一个加强型的FOR循环操作,…
for(集合对象类型 代理对象名:集合名){ }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值