循环的书写格式及使用场景:
1-1 if循环:
if,if-else语句的多层嵌套使其可以处理条件分支复杂的情况,存在多种情况,不同情况的解决方案或返回值不同时使用if循环
if(条件){方法体};
if循环的跳出/跳过问题
跳过某次循环格式如下
if(条件){ continue; }
结束这一条if/else if的循环
直接结束整个循环格式用break语句
if(条件){ break; }
与之类似的还有switch语句,但switch语句相比if语句更局限,条件的类型不能是boolean,只能是byte,int,char,String类型,if的语句内可以是boolean
switch(值/表达式){
case 可能的值 ->{ 方法体; break; }
~
default ->{ 相当于if语句中的else的方法体; break; }
}
tips:switch语句的case穿透:
case穿透实际上就是关于每个case分支里break的使用,case里的break代表该分支方法体的结束,那假如我在多个分支内处理方式不同,这时候就不需要每个都写break,如:
现在我要对星期几进行swich判断,根据结果不同输出“今天是工作日”/“今天是周末”
对于1-5,方法体内容是一样的,只在5后写break,但1-5的case里方法体都需要写,6-7同理
1-2 while循环
while循环条件可以是boolean类型,boolean值为true时执行,false时结束循环,这一特性可以活用于死循环中
跳出while循环的三种方法
1:改变条件的值
我们已知while(true){~}时方法体会无限执行下去,所以只要将条件的true改为false就可以跳出循环,事先定义一个boolean对象flag为true,在while循环内,判断循环跳出的条件,如果要跳出,将flag改为false既可跳出。
除了直接的true/false,一般的返回值为boolean类型的逻辑判断也适用,如!=,==等等
2:break语句
要跳出的分支后加break;就可跳出
1-3 do while循环
先执行,后判断,用的地方着实不太多
do{循环体语句; 条件控制语句; }while(条件判断语句);
qwq我真的不知道怎么用do while
1-4 for循环
用的最多的就是for跟if了,switch和do while其实用的地方都不多
for( 定义变量 ; 变量范围 ; 每次循环结束后的变量改变){~方法体~}
常用于遍历数组,队列
在什么地方使用这些语句?
知道循环次数/范围,使用for——不论是数组,队列,还是一定区间内的数,范围都已知,变量范围确定,反过来说,不知道变量范围就不能用
只知道结束条件,用while——true/false等逻辑判断就是已知的结束条件
分支多,处理方式不同用if嵌套
自学菜鸟的学习笔记