9.5.2 foreach循环

更新于 2026年10月10日 版权声明
9.5.2 foreach循环

虽然Iterator能够对Collection和Map进行遍历,但是从上一小节的实例中可以看出,如果要遍历Collection或者是Map,都需要先获得迭代器,然后再通过while循环来读取数据,这种方式在写法上较为繁琐。为了简化书写,从JDK 1.5开始提供了foreach循环,也称之为增强for循环。foreach循环同样能够实现对数组或集合的遍历,且在书写上更加简洁。

foreach循环的语法格式如下:

图示

如果采用foreach来遍历集合,那么例9.11的输出就可以修改为:

图示(https://www.daowen.com)

因为要遍历的集合coll中保存的是String类型的数据,因此在foreach循环中定义一个String类型的临时变量s,然后在循环体中直接输出临时变量s。同理,例9.12的输出可以修改为:

图示

从上面两个示例可以看出,foreach循环在遍历集合时的写法非常简洁,其的循环次数由集合中的个数来决定而不需要循环变量(集合的索引),也不需要循环条件,直接给定一个临时变量来保存当前循环遍历读取的元素即可。

不过,foreach循环无法控制遍历的过程(如for循环可以控制步长),也无法在遍历过程中对元素进行修改,因为集合中的元素会拷贝一份至临时变量中,修改临时变量不会影响集合中的元素值。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)