Java_控制流程(if、switch、while、for、continue、break、结束外部循环)
Java_控制流程
- if
- switch
- while
- while
- do while
- for
- continue
- break
- 结束外部循环
- 结束当前循环
- 使用boolean变量结束外部循环
- 使用标签结束外部循环
if
if(表达式1){
表达式2;
}
public class Demo {
public static void main(String[] args) {
int day = 6;
if (day>=1 && day<=5)
System.out.println("工作日");
else if (day==6 || day==7)
System.out.println("周末");
else
System.out.println("Error!");
}
}
易错点:
public class Demo {
public static void main(String[] args) {
boolean b = false;
if (b);
System.out.println("yes");
}
}
- 在第4行,if后面有一个分号; 而分号也是一个完整的表达式
- 如果b为true,会执行这个分号,然后打印yes;如果b为false,不会执行这个分号,然后打印yes;即无论如何都会打印yes
switch
switch 语句相当于 if else的另一种表达方式
注: 每个表达式结束,都应该有一个break;
public class Demo {
public static void main(String[] args) {
int day = 6;
switch(day){
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("工作日");
break;
case 6:
case 7:
System.out.println("周末");
break;
default:
System.out.println("Error!");
}
}
}
while
while
- 条件为true时 重复执行
只要while中的表达式成立,就会不断地循环执行
public class Demo {
public static void main(String[] args) {
int i = 0;
while(i<5){
//使用while打印0到4
System.out.println(i);
i++;
}
}
}
do while
- 条件为true时 重复执行,至少会执行一次
与while的区别是,无论是否成立,先执行一次,再进行判断
public class Demo {
public static void main(String[] args) {
int i = 0;
do{
//使用do while打印0到4
System.out.println(i);
i++;
} while(i<5);
}
}
for
for循环,和while一样,只是表达方式不一样
public class Demo {
public static void main(String[] args) {
for (int j = 0; j < 5; j++) {
//使用for打印0到4
System.out.println(+j);
}
}
}
continue
后面的代码不执行,直接进入下一次循环
public class Demo {
//打印单数
public static void main(String[] args) {
for (int j = 0; j < 10; j++) {
if(j%2==0)
continue; //如果是双数,后面的代码不执行,直接进行下一次循环
System.out.println(j); //输出1 3 5 7 9
}
}
}
break
结束循环
public class Demo {
//打印单数
public static void main(String[] args) {
for (int j = 1; j < 10; j++) {
if(0==j%2)
break; //如果是双数,直接结束循环
System.out.println(j); // 输出1
}
}
}
结束外部循环
结束当前循环
break; 只能结束当前循环
使用boolean变量结束外部循环
借助boolean变量结束外部循环
需要在内部循环中修改这个变量值
每次内部循环结束后,都要在外部循环中判断,这个变量的值
public class Demo {
public static void main(String[] args) {
boolean breakout = false; //是否终止外部循环的标记
for (int i = 0; i < 10; i++) {
//外部循环
for (int j = 0; j < 10; j++) {
//内部循环
System.out.println(i + ":" + j);
if (0 == j % 2) {
breakout = true; //终止外部循环的标记设置为true
break;
}
}
if (breakout) //判断是否终止外部循环
break;
}
}
}
使用标签结束外部循环
在外部循环的前一行,加上标签
在break的时候使用该标签
即能达到结束外部循环的效果
public class Demo {
public static void main(String[] args) {
//打印单数
outloop: //outloop这个标示是可以自定义的比如outloop1,ol2,out5
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
System.out.println(i+":"+j);
if(0==j%2)
break outloop; //如果是双数,结束外部循环
}
}
}
}
还没有评论,来说两句吧...