1、switch(表达式){
case 常量1:
执行语句1;
// break;
case 常量2:
执行语句2;
// break;
… …
case 常量N:
执行语句N;
// break;
default:
执行语句;
// break;
}
2、说明:
①根据Switch表达式的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应case结构中,调用其执行语句。当调用完执行语句以后,则仍然继续向下执行其他的case结构中的执行语句,直到遇到break关键字或此switch-case结构末尾为止结束。
② break,可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出switch-case结构。
③switch结构中的表达式,只能是如下6种数据类型之一:byte、short、char、int、枚举类型(JDK5.0新增)、String类型(JDK7.0新增)。
④case后面只能声明常量,不能声明范围。
⑤break关键字是可选的。
⑥default相当于if-else结构中的else,default结构是可选的。
switch-case练习1
1、使用 switch 把小写类型的 char型转为大写。只转换 a, b, c, d, e. 其它的输
出 “other”。
提示:String word = scan.next(); char c = word.charAt(0); switch(c){}
import java.util.Scanner;
class SwitchCaseExer1 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入需要转换的字符:");
String word = scan.next();
char c = word.charAt(0);
switch (c)
{
case 'a':
System.out.println('A');
break;
case 'b':
System.out.println('B');
break;
case 'c':
System.out.println('C');
break;
case 'd':
System.out.println('D');
break;
default:
System.out.println("other");
break;
}
}
}
switch-case练习2
2、对学生成绩大于60分的,输出“合格”。低于60分的,输出“不合格”。
说明:如果switch-case结构中的多个case的执行语句相同,则可以考虑进行合并。
import java.util.Scanner;
class SwitchCaseExer2 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入考试成绩:(0-100)");
int score = scan.nextInt();
switch (score / 10){
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("不及格");
break;
case 6:
case 7:
case 8: