您的位置:首页 > 编程语言 > Java开发

java增强for循环总结

2016-05-10 10:12 295 查看
今天总结一下for循环在java程序中的使用,先来看一下一般的for循环的使用方法:

for(int i=0;i<10;i++) {
System.out.println(i);
}


这里分别看一下这几种情况:

1. 三部分都为空

for(;;) {
System.out.println(0);
}


这个程序是个死循环,因为它缺少结束的条件。

2. 第二部分为空

for(int i=0;;i++) {
System.out.println(i);
}


这个程序也是死循环,i无限递增。

3. 第三部分为空

for(int i=0;i<10;) {
System.out.println(i);
}


这个程序也是死循环

4. 第二三部分为空

for(int i=0;;) {
System.out.println(i);
}


这个代码也是死循环

这是单个变量的写法,还可以使用多个变量:

for(int i=0,j=0;j<10&&i<10;i++,j++) {
System.out.println(i+j);
}


for循环除了以上的一般写法外,jdk5.0以后的版本都提供了增强for循环的特性,使用起来更加方便,比如我现在想遍历输出一个集合,就可以这样写;

List<String> list = new ArrayList<String>();
list.add("aa");
list.add("bb");
list.add("cc");
for(String s:list) {
System.out.println(s);
}


这种写法要比上面的写法简单的多,而且只有一种写法,对于数组和实现了Iterator接口的集合,都可以使用这种增强for循环的方式来遍历。除了for循环外还有while循环和迭代器两种循环方式,对于上述集合,也可以使用下面这种迭代器的方式实现遍历:

Iterator<String> it = list.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}


这种写法比增强for循环要复杂一些,其实增强for循环的出现就是为了替代迭代器,所以对于能使用增强for循环的集合就尽量使用增强for循环。增强for循环的底部实现其实就是迭代器,这个大家可以在编译好的class文件中发现,所以他俩在本质上是没有什么区别的,只是写法的难易程度不同而已。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: