一、分支语句
1.if判断语句
语法:if(判断条件一){
语句体一
}else if(判断条件二){
语句体二
}else{
语句体三
}
执行流程:其中else if可以有若干个
2.switch 语句
语法:switch(表达式){ //表达式就是将要匹配的值
case 值1: //枚举被匹配的值
语句体1; //复合条件后智行的语句体
break; //用来结束switch的判断
case 值2:
语句体2;
break;
…
default: //所有情况都不匹配时就执行他线面的语句体
语句体 n+1;
break;
}
注意:① case所给的值不能重复,case后面的值只能是常量不能是变量
②如果case对应语句体下面的break不写,就会产生穿透效果(即执行下一个case后面的
语句体),当我们多种情况下智行一个语句体时可将这些判断条件罗列后不写break
jdk14版本开始, case后面允许编写多个数据, 多个数据中间使用逗号分隔
二、循环语句
1.for循环
语法:
for(初始化语句; 判断条件; 条件控制语句){
循环体语句;
}
执行流程:
for注意事项 :
① for循环 {} 中定义的变量, 在每一轮循环结束后, 都会从内存中释放
② for循环 () 中定义的变量, 在整个循环结束后, 会从内存中释放
③ for循环 () 和 {} 之间不要写分号
经典for循环案例:
1.求1-100之间的偶数和,并把求和结果在控制台输出:
public static void evenNumber() {
int sum = 0;
for(int i=1; i<=100;i++){
if(i%2 == 0){
sum = sum + i;
};
};
System.out.println(sum);
}
2.在控制台输出所有的“水仙花数”:
//水仙花数是一个即个位、十位、百位的数字立方和等于原数的三位数,
// 371:3³+7³+1³=27+343+1=371
public static void flower(){
for (int i=100;i<=999;i++){ //获取全部的三位数字
int g = i % 10; //获取个位数字
int s = i / 10 % 10;//获取全十位数字
int b = i / 100 ;//获取百位数字
int num = b*b*b + s*s*s + g*g*g; //立方求和
if(num == i){ //判断和是否与原数相等
System.out.println(num);
}
}
}
2.while循环
语法:
初始化语句;
while(判断条件){
循环体语句;
条件控制语句;
}
执行流程://与for循环大体相同,while循环能执行的语句for循环都可以做到
1. 执行初始化语句
2. 执行判断条件, 看其返回结果是true, false
false : 循环结束
true : 进入第三步
3. 执行循环体语句
4. 执行条件控制语句
5. 回到2继续
死循环:while(true){}
3.do…while循环
语法:
初始化语句;
do {
循环体语句;
条件控制语句;
}while(判断条件);
执行流程://do…while的特点就是无论判断条件怎样都会执行一次循环体语句
1. 执行初始化语句
2. 执行循环体语句
3. 执行条件控制语句
4. 执行判断条件, 看其返回结果是true, false
false : 循环结束
true : 回到第二步继续
4.跳转控制语句介绍
① break : 终止循环体内容的执行,也就是说结束当前的整个循环
② continue: 跳过某次循环体内容的执行,继续下一次的执行
注意:
break:只能在循环和switch中使用;
continue:只能在循环中使用;