第三章 循环、选择、判断
提示:目录部分
文章目录
前言
提示:内容概要
条件判断语句、switch语句和常见的循环
提示:以下是本篇文章正文内容
一、if
- 简单if else
if(条件表达式){
执行语句;
}else{
执行语句;
}
- 复杂if else
if(条件判断语句){
执行语句;
}else if(条件判断语句){
执行语句;
}
...
else{
执行语句;
{
⚠️小结
- if是可以进行嵌套的。
二、switch
理论上只进行精确值判断,不做区间判断。
switch(类型值){
case 类型值:
执行语句;
break;
case 类型值:
执行语句;
break;
default:
执行语句;
}
⚠️小结
- switch只接收byte、short、int、char、枚举类型和String类型。
- switch如果中间的case中的执行语句结尾没有break会继续往下执行(穿透效果)。
- default 默认执行,处于末尾时,不用添加break。
三、循环
1. for循环
for(语句1;循环条件表达式;语句3){
循环体;
}
⚠️小结
- for循环执行顺序是: 执行语句1 ->判断循环条件表达式->执行循环体->执行语句3。
- for循环括号中两个分号不能省略,语句和其中的循环条件表达式都是可以省略的。
2.while循环
while(循环判断条件){
循环体;
}
3.do…while循环
do{
循环体;
}while(循环判断条件);
⚠️小结
- do…while循环至少执行一次
4.双层循环/多层循环
for(;;){
for(;;){
循环体;
}
}
示例代码:打印直角三角形
for(int i=1;i<=5;i++){
for(int j=1;j<=i;j++){
System.out.print(*);
}
System.out.print("\n");
}
⚠️小结
- 双层循环或者多层循环 时间复杂度比较高 极少使用
四、continue和break
1.continue
跳过本次循环,执行后续循环
示例代码:输出结果为 1 2 3 4 6 7 8 9
for(int i = 1;i <= 9;i++){
System.out.print(i+" ");
if(i % 5 == 0){
continue;//如果能被5整除,跳过
}
}
2.break
直接跳出整个循环
示例代码:输出结果为 1 2 3 4
for(int i = 1;i <= 9;i++){
System.out.print(i+" ");
if(i % 5 == 0){
break;//如果能被5整除,跳出循环
}
}
总结
提示:总结部分
-
1、请描述break和continue的共同点和不同点。
共同点:break和continue都能够控制循环,一旦运行其后的循环体代码都不执行,break可以控制switch
不同点:break直接跳出整个循环,终止循环;continue是跳过本次循环开始下次循环
-
2、请描述while、do…while和for的相同点和不同点。
while循环,循环次数不确定,先判断后执行的循环;
do…while循环,循环次数不确定 先执行后判断;
for循环 ,循环次数确定,先判断后执行。