Re:从零开始学JAVA第三章:基础语句

83 阅读4分钟

分支语句

if语句3种定义格式

格式一:

if(比较表达式) {
语句体;
}

执行流程:

判断比较表达式。如果是true,就执行语句体,如果是false。就不执行语句体了

格式二:

if(比较表达式1) {
		语句体1;
	}else {
		语句体2;
	}

执行流程:

先判断比较表达式的值。如果为true,就执行语句体1,如果为false,就执行语句体2

注意事项:

  1. 一旦执行了某一个大括号中的语句体,整个if语句就结束了.不可能出现执行两个语句体的情况.
  2. 有else{}的情况下,不可能一个语句体都不执行.因为else{}是收尾工作,他的作用就是前边的条件不满足,那么就会执行它.

格式三:

if(比较表达式1) {
			语句体1;
		}else if(比较表达式2) {
			语句体2;
		}else if(比较表达式3){
			语句体3;
		}else {
			语句体n;
		}

执行流程:

判断比较表达式1的值。如果是true,就执行语句体1,如果是false,判断比较表达式2的值,如果是true,就执行语句体2,如果是false,判断比较表达式3的值,如果是true,就执行语句体3,如果是false,就执行最后的else语句中的语句体n 注意事项:

首先开头有且仅有一个if,后面会有0个到多个else if语句,最后可能没有else,有也仅仅只会有一个else

世界上最遥远的距离就是你在if里,我在else里,似乎一直相伴,却永远无法结伴而行

switch 语句

标准格式:

switch (普通表达式) {
			case1:
				语句体1;
				break;
			case2:
				语句体2;
				break;
			case3:
				语句体3;
				break;
			...
			default:
				语句体n+1;
				break; // 最后一个break语句可以省略,但是强烈推荐不要省略
		}

执行流程:

看表达式的结果和哪个case后面的值相同,就执行那个case后面的语句体,碰到break就结束switch,如果没有符合要求的case则执行default后面的语句体

注意事项: 1.switch后面小括号当中只能是下列数据类型:基本数据类型:byte/short/char/int,引用数据类型:String字符串、enum枚举

2.switch可以没有default,但是一般都会加上

3.case语句后面可以不加break.但是如果不加break就会出现case穿透问题.匹配哪一个case就从哪一个位置向下执行,直到遇到了break或者整体结束为止;

循环语句

for循环

格式:

for(初始化语句;比较表达式;步进语句){
			循环体;
		}

执行流程:

先执行初始化语句,然后看条件判断的结果,如果为false 循环结束,如果为true 执行循环体.循环体执行完后执行条件控制语句.然后继续执行条件判断(PS:注意,不是初始化语句)如果结果为false,结束循环,结果为true则继续循环体,然后条件控制语句以此类推

注意事项:

for循环的变量在小括号当中定义,只有循环内部才可以使用

while循环

基本格式:

while(比较表达式){
			循环体;
		}

执行流程:

看判断表达式的结果,如果为false循环结束,如果为true,则执行循环体.循环体执行完后继续看判断表达式的结果以此类推

完整格式:

初始化语句;
		while(比较表达式){
				循环体;
				步进语句;
		}

执行流程: 1, 执行初始化语句

2, 执行判断表达式, 看其结果为 true 还是 false ,如果为 false , while 循环结束;如果为 true ,继续执行循环体;

3, 执行条件控制语句

4, 回到2步骤继续

do...while

格式:

do{
			循环体;
		}while(比较表达式);

执行流程:

先执行循环体,然后看判断表达式的结果如果为true则继续执行循环体如果判断表达式的结果为false则循环结束,如此反复。

跳转控制(控制跳转)语句

break

在循环过程中,碰到break整个循环就直接结束了

应用场景:break只能出现在循环中或者switch中

continue

如果在循环过程中碰到了continue,则跳过本次循环,继续下次循环