选择结构(switch语句)
switch语句格式:
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…….
default:
语句体n+1;
Break;
}
switch: 表示这是switch选择结构
表达式: byte,short,int,char,JDK5以后可以是枚举,JDK7以后可以是字符串
注意事项:
case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
default可以省略吗?可以,一般不建议。除非判断的值是固定的
break可以省略吗? 可以,一般不建议,否则结果可能不是你想要的
default的位置一定要在最后吗? 可以出现在switch语句任意位置
switch语句的结束条件
遇到break;执行到程序的末尾
int a = 2; int b = 1; switch (a) { default: b++; break; case 1: b++; case 2: b++; } System.out.println("b:::" + b); // 2
int a = 2; int b = 1; switch (a) { default: b++; case 1: b++; case 2: b++; } System.out.println("b:::" + b); // 2
int a = 2; int b = 1; switch (a) { default: b++; case 3: b++; case 4: b++; } System.out.println("b:::" + b); // 4
If语句和switch语句
If语句使用场景:
针对结果是boolean类型的判断
针对一个范围的判断
针对几个常量值的判断
switch语句使用场景:
针对几个常量值的判断
循环结构(for循环语句)
For循环语句格式:
For(初始化语句;判断语句;控制语句) {
循环体语句;
}
执行流程
A 执行初始化语句
B: 执行判断条件语句,看其结构是true还是false
如果是false,循环结束;如果是true,继续执行
C: 执行循环体语句
D: 执行控制条件语句
E: 回到B继续
while循环语句格式
基本格式
while(判断条件语句){
循环体语句
}
扩展格式
初始化语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}
for循环和while循环的区别
场景区别: for循环适合针对一个范围判断进行操作
while循环适合判断次数不明确操作
do…while循环语句
基本格式
do{
循环体语句
}while(判断条件语句)
扩展格式
初始化语句
do{
循环体语句;
控制条件语句;
} while(判断条件语句)
循环结构(区别及注意事项)
do..while循环至少会执行一次循环体
for循环和while循环只有条件成立的时候才会执行循环体
注意事项:
优先考虑for 循环,再考虑while循环,最后考虑do…while循环
如下代码是死循环
while(true){}; for(;;){}
‘\t’, tab键的位置 ‘\r’, 回车;‘\n’, 换行
跳转控制语句
break 中断;continue 继续;return返回
break的使用场景
在选择结构switch语句中
在循环语句中
break的作用
跳出单层循环
跳出多层循环
带标签的跳出
格式: 标签名: 循环语句
标签名要符合Java的命名规则
one: for (int i = 0; i < 3; i++) { two: for (int j = 0; j < 5; j++) { if (j ==1) { break two; } System.out.println("L"); } } /**输出 L L L*/
one: for (int i = 0; i < 3; i++) { two: for (int j = 0; j < 5; j++) { if (j ==1) { break one; } System.out.println("L"); } } /**输出 L*/
break跳出本层循环,不执行本循环类的其他语句,如果本类循环后面还有输出语句,会输出;
continue:跳过本次循环,不执行后面的,直接进入下一次循环
return:直接结束循环,不进入下一次循环;结束一个方法,也就是退出一个方法