Java流程控制-循环结构:for语句及循环的嵌套

for语句

接下来介绍循环结构的for语句,for语句的语法结构是这样的:

for(初始操作;循环继续条件;每次迭代后的操作)
{
	循环体语句
}

for循环的流程图概念为:
在这里插入图片描述
具体该怎么用呢?举个栗子:
在这里插入图片描述
除了这种格式,JDK5之后有了这样一种for循环。

【JDK5中的增强for循环】

优点:
可以简单地遍历数组和Collection等类型的对象。
格式:

for(循环变量类型 循环变量名称 : 被遍历的对象)
{
    
    
	循环体//如System.out.println(循环变量名称);
}

例如:

public static void main(String[] args) {
    
    
		String[] arrayStr = {
    
    "java","asp","php","delphi"};
		
		for(int i=0;i<4;i++) {
    
    
			System.out.print(arrayStr[i]+"\t");
		}
		
		System.out.println("\n使用增强型for遍历:");
		for(String s : arrayStr) {
    
    
			System.out.print(s+"\t");
		}

	}

}

注意:

for循环中的初始动作可以是零个或多个以逗号隔开的语句列表。for循环中每次迭代后的动作可以是零个或多个以逗号隔开的语句列表。因此,下面两个for循环是都正确的。但是它们很少在实际中使用。

for(int i=1;i<100;System.out.println(i++));

	for(int i = 0,j=0;(i+j<10);j++){
    
    
	//Do something
}

如果省略了for循环中的循环继续条件,这隐含地认为循环继续条件为true。因此下图(a)中给出的语句是正确的,但却是一个无限循环。最好是使用等价循环(b)以免混淆:
在这里插入图片描述
在for语句末尾循环体之前添加分号是一个常见的错误,如下所示:
在这里插入图片描述
将会是for语句变成一个空语句,无论条件是否处理,循环体都将被执行一次。
在这里插入图片描述

在学习了三种循环后,该如何选择循环?

三种形式的循环语句:while、do-while和for在表达的效果上是一样的,也就是说,可以使用三种形式任意之一来编写一个循环。例如:图(a)中的while循环总能转化成图(b)中for循环:
在这里插入图片描述
除了在某些特殊情况,下图(a)中的for循环接通常都可以转化成图(b)的while循环:
在这里插入图片描述
因此,具体选择哪一种全靠个人喜好,需要注明的是,while和for最少执行零次循环体,而do-while至少执行一次。

【嵌套循环】

嵌套循环是由一个外层循环和一个或多个内层循环组成的。每当重复执行一次外层循环时,将再次进入内部循环并重新开始执行。

使用方法和if语句的嵌套类似。

猜你喜欢

转载自blog.csdn.net/m0_46700215/article/details/105778294
今日推荐