Java中for循环嵌套以及循环的中断

很多初学者到for循环这里就学不会了,今天,我来讲解一下for循环以及嵌套循环,还有中断。

单层for循环语句:

for(赋值条件; 判断条件; 赋值增减量){

语句1;

......

语句n;

}

若在循环主体中要处理的语句只有一个,可以将大括号省去。

下面列出单层for循环的流程:

  1. 第一次进入for循环时,要为循环控制变量赋初始值。
  2. 根据判断条件的内容检查是否要继续执行循环,当判断条件之为真时,继续执行循环主体内的语句,判断条件值为假时,则会跳出循环,执行其他语句。
  3. 执行完循环主体内语句后,循环控制变量会根据增减量的要求更改循环控制变量的值,然后再回到步骤2,重新判断是否继续执行循环。
public class ForDemo{
	public static void main(String[] args){
		int sum = 0;
		for (int i =1;i<=10;i++){
			sum += i;
		}
	}
}

双层for循环语句:

for(赋值条件; 判断条件; 赋值增减量){

for(赋值条件; 判断条件; 赋值增减量){

语句1;

......

语句n;

}

}

通过9*9乘法表来解释

public class DoubleForDemo{
	public static void main(String[] args){
		for(int i = 1 ; i<=9;i++){
			for(int j=1;j<=i;j++){
				Systerm.out.print(i+"*"+j+"="+(i*j)+"	");
			}
			Systerm.out.println("
");
		}
	}
}

说明:

  1. i为外层循环的循环控制变量,j为内层循环的循环控制变量。
  2. 当i为1时,符合外层for循环的判断条件(i<9),进入另一个内层for循环主体,由于是第一次进入内层循环,所以j的初值为1,符合内层for循环的判断条件值(j<=1),进入循环主体,输出i*j的值(1*1=1),如果最后j的值仍然符合内层for循环的判断条件(j<=i),则再次执行计算与输出的工作,知道j的值大于i时,离开内层for循环,回到外层循环。此时,i会+1成为2,符合外层for循环的判断条件,继续执行内层for循环主体,知道i的值大于9时离开嵌套循环。

循环的中断:

break语句

可强迫中断循环,当程序执行到break语句时,即会离开循环,继续执行循环外的下一个语句,如果break语句出现在嵌套循环中的内层循环,则break语句只会跳出当前循环。

public class BreakDemo{
	public static void main(String[] args){
		for(int i = 0 ; i<=9;i++){
			if(i==3){
				break;
			}
		Systerm.out.println("
");
		}
	}
}
i = 0
i = 1
i = 2

continue语句

可以强迫程序调到循环的起始处,当程序运行到continue语句时,会停止运行剩余的循环主体,而是回到循环的开始出继续运行。在下面的for循环中,在循环主体中有continue,当运行到continue时,就会回到起点,继续执行循环主体的部分语句。
public class ContinueDemo{
	public static void main(String[] args){
		for(int i = 0 ; i<=5;i++){
			if(i==3){
				continue;
			}
		Systerm.out.println("
");
		}
	}
}
i = 0
i = 1
i = 2
i = 4
i = 5
当i的值为3时,程序并没有向下执行输出语句,而是退回到了循环判断出继续向下执行,所以continue只是中断了一次循环操作。

其他要点:

  1. Java的数据类型可分为基本数据类型和引用数据类型
  2. 数据类型的转换可分为“自动类型转换”和“强制类型转换”
  3. 在循环中可以声明变量,但声明的变量只是局部变量,只要跳出循环,这个变量便不能再使用。
经验分享 程序员 微信小程序 职场和发展