java中的swtich : 定值判断
语法:
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;
....
default:
语句体n;
break;
}
说明:
表达式: 一般指一个变量,或者使用表达式
数据类型: byte,short,int,char,枚举(jdk1.5),字符串(jdk1.7)
case: 表达式的值会与case后的值进行判定,判定是否相等
break: 提前结束swtich语句,防止case穿透
default: 如果当以上的case后的值都不满足表达式的结果的时候,执行default中的内容,与if中的else非常像
位置可以改变,可以放在swtich中的任意位置,一般放在最后,break可以省略,如果放在其他位置,break不能省略
执行流程:
1. 计算表达式的结果
2. 表达式的结果与case后后的值以此判断,代码从上倒下以此执行,如果与当前case后面值相同,执行对应的语句体
3 .如果与哪一个case后的值都不相同,执行default中的内容
case穿透如果执行完成对应的语句体后没有break,会发生case穿透,后面的case不再判断,执行执行下面的语句体,
知道遇到下一个break或者switch的结束而结束
例题:
public class Demo01{
public static void main(String[] args){
String color="蓝";
switch(fcolor){
case "红":
System.out.println("红...");
break;
case "绿“:
System.out.println("绿..");
break;
case "黄":
System.out.println("黄灯...");
break;
default:
System.out.println("孩子傻了怎么办...");
break;
}
}
}
For循环语句:
for循环
for( 条件初始化 ;条件判断 ;条件变化 ){
循环体语句;
}
说明:
条件初始化:声明一个变量i,并且第一次赋值 作用域只在当前循环中可以使用
变量i,可以控制循环的次数,控制要使用的参数
条件判断:判断条件i是否满足要求
条件变化:i自身值的改变
执行流程:
1.执行条件初始化,有了变量i,i也有值
2.进行条件判断,判断是否满足条件,如果结果false,for循环结束,循环体不会再次进入
3.如果结果true,满足条件,就去执行以此循环体语句
4.执行条件变化
从二次循环开始,就重复执行2,3,4步
当循环体语句只有一句,前后的{}可以省略
嵌套循环
循环嵌套
for(条件初始化;条件判断;条件变化){
代码
for(条件初始化;条件判断;条件变化){
代码
}
代码
}
外层循环执行一次,内层循环执行一轮
死循环
定义:死循环是指条件永远为 true,注意死循环不一定是
错误的,如服务器就是一个大大的死循环,不间
断服务着。
A:一定要注意修改控制条件,否则容易出现死循环。
B:最简单的死循环格式
a:while(true){…}
b:for( ; ; ){}
while循环
条件初始化;
while(条件判断){
循环体语句;
条件变化;
}
执行流程:
1.条件初始化
2.执行条件判断
3.如果满足条件执行循环体语句,如果不满足条件结束
4.重复执行2,3步
例题:
int i=1;
while(i<=10){
System.out.println(i);
i++; //条件变化
}
System.out.println(i);
do… while循环
do{
循环体语句;
}while(条件判断);
while: 先判断,满足条件再执行
do..while : 先执行,再判断,如果满足条件,执行下一次
无论是否满足条件,都至少执行一次
例题:
public static void main(String[] args){
int i=1; //条件初始化
int sum=0; //和
while(i<=100){
sum+=i;
i++;
}
System.out.println(sum);
break&continue
(1) break:中断的意思
A:用在循环和switch语句中,离开此应用场景无意义。
B::作用:跳出单层循环
(2)continue:继续
A:用在循环中,离开此应用场景无意义。
B:作用:跳出单层循环的一次(本次),继续下一次循环