关键字break和continue
除了在switch语句中使用break,还可以在一个循环中使用break立即终止该循环.
循环语句有三类: while循环, do-while循环和for循环.
循环中需要重复执行的语句所构成的整体称为循环体.
循环体执行一次称为循环的一次迭代.
无限循环是指循环语句被无限次执行.
在设计循环时,既考虑循环控制结构体,还需要考虑循环体.
while循环首先检查循环继续条件.如果条件为true,则执行循环体;如果条件为false,则循环体结束.
do-while循环与while循环类似,只是do-while循环先执行循环体,然后在检查循环继续条件,以确定是继续还是终止.
由于while循环和do-while循环都包含循环继续条件,这个条件是和循环体相关的,重复的次数就是由循环体决定的.因此,while循环和do-while循环常用语循环次数不确定的情况.
标志值是一个特殊的值,用来标志循环的结束.
for循环一般用在循环体执行次数预知的情况,这个次数不是有循环体确定的.
for循环由三部分组成.第一部分是初始操作,通常用于初始化控制变量.第二部分是循环继续条件,决定是否执行循环体.第三部分是每次迭代后执行的操作,经常用于调整控制变量.通常,在控制结构中初始化和修改循环控制变量.
while循环和for循环都称为前测试循环(pretest loop),因为在循环体执行之前,要检测一下循环继续条件.
do-while循环称为后测试循环(posttest loop),因为在循环体执行之后,要检测一下这个条件.
在循环中可以使用关键字break和continue.
关键字break立即终止包含break的最内层循环.
关键字continue只是终止当前迭代.
package welcome; /* * 使用嵌套for循环打印一个乘法表 */ public class MultiplicationTable { public static void main(String[] args) { System.out.println(" Multiplication Table"); // 显示标题 System.out.print(" "); for(int j = 1; j < 10; j++){ System.out.print(" " + j); // 显示从1到9的数字 } System.out.println("\n----------------------------------------"); // 显示横线 for(int i = 1; i < 10; i++){ System.out.print(i + " | "); for(int j = 1; j < 10; j++){ System.out.printf("%4d", i * j); // 在内层循环中,随着每个i,j取遍1,2,3,..,9,内层循环在每一行显示乘积i*j的值 } System.out.println(); } } }
package welcome; public class TestSum { public static void main(String[] args) { double sum = 0; int count = 0; for(double i = 0.01; i <= 1.0; i = i + 0.01){ sum += i; count++; System.out.println(count + " " +i); } System.out.println("The sum is " + sum); sum = 0; double currentValue = 0.01; for(int i = 0; i < 100; i++){ sum += currentValue; currentValue += 0.01; } System.out.println(sum); } }
package welcome; public class TestBreak { public static void main(String[] args) { int sum = 0; int number = 0; while(number < 20){ // number++; sum += ++number; // number++; if(sum > 100){ break; } } System.out.println("The number is " + number); System.out.println("The sum is " + sum); } }
package welcome; public class TestContinue { public static void main(String[] args) { int sum = 0; int number = 0; while(number < 20){ number++; if(number == 10 || number == 11) continue; // 当number为10或11时,就会执行continue语句,continue结束了当前迭代,就不再执行循环体中的其他语句. sum += number; // 将1到20中除去10和11之外的整数都加到sum中 } System.err.println("The sum is " + sum); } }
时间: 2024-10-11 06:26:46