1. 判断语句 : if 语句

1.1 if 语句格式一

格式:
if (关系表达式) {
    语句体;	
}

流程:

true

false

计算关系表达式的值

条件判断

执行语句

不执行语句

继续执行后续语句的内容

注 : 若语句体只有一条, 可省略大括号, 语句跟在后面即可(能看懂即可, 自己不建议这么写)

1.2 if 语句格式二

格式:
if (关系表达式) {
    语句体1;	
} else {
    语句体2;	
}

流程:

true

false

计算关系表达式的值

条件判断

语句体1

语句体2

继续执行后续语句的内容

1.3 if 语句格式三

格式:
if (关系表达式1) {
    语句体1;	
} else if (关系表达式2) {
    语句体2;	
}else {
    语句体n+1;
}

流程: 计算关系表达式的值 -> 若为true 执行语句体1, 若为false 计算关系表达式2的值 -> 若为true 执行语句体2, 若为false 计算关系表达式3的值 -> … ->如果没有任何关系表达式为true,就执行语句体n+1 ->继续执行后续语句的内容


2. switch 语句

2.1 格式

switch (表达式) {
	case 1:
		语句体1;
		break;
	case 2:
		语句体2;
		break;
	...
	default:
		语句体n+1;
		break;
}

2.2 执行流程

计算出表达式的值 -> 和case依次比较,有对应的值,就执行相应的语句, 遇到break结束 -> 如果所有的case都和表达式的值不匹配,执行default语句体,然后程序结束

2.3 注意

  • default 可放在任意位置

  • 不写break会引发case穿透现象(case内语句执行完后, 接着执行下一个case内的语句, 直到遇到一个break为止)

  • switch在JDK12的新特性

switch (week) {
    case 1, 2, 3, 4, 5 -> System.out.println("工作日");
    case 6, 7 -> System.out.println("休息日");
    default -> System.out.println("没有这个星期");
}

3. 循环结构

3.1 for循环结构

在满足循环条件的情况下,反复执行某一段代码

3.1.1 格式
for (初始化语句;条件判断语句;条件控制语句) {
	循环体语句;
}
  • 初始化语句 : 循环开始时的状态
  • 条件判断语句 : 循环执行的条件
  • 条件控制语句 : 循环执行中每次变化的内容
  • 循环体语句 : 反复执行的内容
3.1.3 流程

执行初始化语句 -> 执行条件判断语句, 如果是false,循环结束 , 如果是true,继续执行 -> 执行循环体语句 -> 执行条件控制语句 -> 回到第二步继续


3.2 while循环

3.2.1 格式
初始化语句;
while(条件判断语句){
	循环体;
	条件控制语句;
}

3.3 do…while循环

3.3.1 格式
初始化语句;
do{
    循环体;
    条件控制语句;
}while(条件判断语句);
3.3.2 特点:

​ 先执行,再判断


3.4 总结

  • for和while循环,先判断,再执行

  • do…while循环, 先执行,再判断

  • 知道循环次数或者循环范围的时候,用for循环

  • 不知道循环次数,也不知道循环范围,但是知道循环的结束条件时,用while循环


switch在JDK12的新特性 之外 , 其他 流程控制句 的语法与 c/cpp 一致

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐