Switch结构语句:
switch(表达式){
case 值1:
语句体;
break;
case值2:
语句体;
break;
…
default:
语句体;
break;
}
case标签必 须为字符串或字面常量
case语句中的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量,
变量的值与case语句的值相等时,那么case语句之后的语句才开始执行,直到出现break语句才跳出switch语句,如果整个switch都没break则程序执行到最后一个语句块结束。
当遇到break时,switch语句终止。程序跳转到switch语句后面的语句执行,case语句不必须包含break语句,如果没有break语句出现,程序会继续执行下一条case语句,直到出现break语句。
switch语句可以包含一个default分支,default语句一般放在最后一个(可以是任何位置,建议最后一个)。default语句可以不要break,在所有case都不满足使执行default,
default不是必须,可写可不写
switch用于等值判断,其他情况用if
使用switch语句时,只要保证有break,case的顺序不影响程序的逻辑
public class Lian{
public static void main(String[] args){
int option = 2;
switch(option){
case 2:
System.out.println(“selected 1”);
break;
case 1:
//System.out.println(“selected 2”);
case 3:
System.out.println(“selected 2,3”);
break;
default:
System.out.println(“NO selected”);
}
}
}
最后 打印结果是:selected 1
switch本身是做等值判断的语句
对于获取用户输入的情况:
int型: .nextInt
float型:.nextFlost
字符串型:.nextLine--------输入碰到回车就终止输入
.next------------空格,回车,Tab键都会被为终止符
例如:你想用next()获取用户输入的张 三,得到的字符是张三
而使用next.Line()方法则可以完整的获取到张 三
if(关系表达式){
语句体
}else if
…
…else{
语句体
}
语句体可以不写