Java使用foreach循环遍历Collection
2年前 (2024-04-28)
《Java Iterator遍历Collection元素》一节中主要讲解如何使用 Iterator 接口迭代访问 Collection 里的元素,除了这个方法之外,我们还可以使用 Java 5 提供的 foreach 循环迭代访问元素,而且更加便捷。如下程序示范了使用 foreach 循环来迭代访问元素。
public class ForeachTest {
public static void main(String[] args) {
// 创建一个
Collection objs = new HashSet();
objs.add("C语言中文网Java教程");
objs.add("C语言中文网C语言教程");
objs.add("C语言中文网C++教程");
for (Object obj : objs) {
// 此处的obj变量也不是元素本身
String obj1 = (String) obj;
System.out.println(obj1);
if (obj1.equals("C语言中文网Java教程")) {
// 下面代码会引发 ConcurrentModificationException 异常
objs.remove(obj);
}
}
System.out.println(objs);
}
}
输出结果为:
C语言中文网C++教程
C语言中文网C语言教程
C语言中文网Java教程
[C语言中文网C++教程, C语言中文网C语言教程]
上面代码使用 foreach 循环来迭代访问 Collection 里的元素更加简洁,这正是 JDK 1.5 的 foreach 循环带来的优势。与使用 Iterator 接口迭代访问元素类似的是,foreach 循环中的迭代变量也不是元素本身,系统只是依次把元素的值赋给迭代变量,因此在 foreach 循环中修改迭代变量的值也没有任何实际意义。同样,当使用 foreach 循环迭代访问元素时,该也不能被改变,否则将引发 ConcurrentModificationException 异常。所以上面程序中第 14 行代码处将引发该异常。
- 随机文章
- 风儿(风儿轻轻的吹)
- 儿童教育文章(儿童教育)
- 抖音卡(抖音卡顿怎么解决)
- 兵马俑(兵马俑介绍和历史背景)
- 陈武简历
- 海猫鸣泣之时游戏(海猫鸣泣之时游戏在哪玩)
- 韩国媳妇和小雪(韩国媳妇和小雪的父亲工资是多少)
- 儋州市第二中学(儋州市第二中学录取分数线)
- 鬼泣5攻略(鬼泣5攻略第三关怎么跳)
- 地球日主题(2020年世界地球日主题)
- 和柳亚子(和柳亚子先生于田)
- 冰客(冰客果汁)
- yy魔兽(yy魔兽世界)
- 国外成人游戏(国外成人游戏注册需要visa信用卡)
- 充值卡代理(充值卡代理加盟)
- 东天目山(东天目山景区)
- 杭同(杭同培训中心怎么样)
- 蝙蝠给人类的一封信(蝙蝠给人类的一封信)
- 大松电饭煲(美的大松电饭煲)
- 服饰加盟(服饰加盟店招商)
- 疯狂填字(疯狂填字5)
- 点对点短信息(点对点短信息费是什么意思)
- 河北省大运会(河北省大运会时间)
- 哈利波特官网(哈利波特官网在哪里)
- 骇客神条(骇客神条怎么辨别真假)
- 杜星霖(杜星霖图片)
- 查传倜(查传倜个人生活)
- 广州晓港公园(广州晓港公园正门图片)
- 钢筋等级符号(钢筋等级符号电脑怎么输入)
- 河源巴伐利亚(河源巴伐利亚庄园)
