语法格式(等值的判断----标号跳转语句)
switch(表达式) {
case 值1:
语句体1;
break;(跳出上一个switch语句)
case 值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
细说语法:
case后面跟的是要和表达式进行比较的值
语句体部分可以是一条或多条语句
break表示中断,结束的意思,用来结束switch语句
default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
switch(表达式) {
case 值1:
语句体1;
break;(跳出上一个switch语句)
case 值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
细说语法:
case后面跟的是要和表达式进行比较的值
语句体部分可以是一条或多条语句
break表示中断,结束的意思,用来结束switch语句
default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
import java.util.Scanner;
public class Switch1{
public static void main(String[] args){
System.out.println("请输入(1-2)的数字");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
switch(num){
case 1:
System.out.println("数字1");
break;
case 2:
System.out.println("数字2");
break;
default:
System.out.println("输入有误");
break;
}
}
}
switch的表达式为String类型的案例
public class Switch2{
public static void main(String[] args){
System.out.println("请输入学生姓名:");
Scanner sc = new Scanner(System.in);
String name=sc.next(); //next()接收字符串类型的值
switch(name){
case"张三":
System.out.println("同学1");
break;
case"李四":
System.out.println("同学2");
break;
case"王二":
System.out.println("同学3");
break;
default:
System.out.println("无此人");
break;
}
}
}
switch语句的相同条件的整合运用案例:
import java.util.Scanner;
public class Switch3{
public static void main(String[] args){
System.out.println("请输入一年中的任意月份");
Scanner sc = new Scanner(System.in);
int month = sc.nextInt();
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12://只要匹配上1,3,5,7,8,10,12,都会继续往下走,直到遇到break
System.out.println(31);
break;
case 2:
System.out.println(28);
break;
case 4:
case 6:
case 9:
case 11:
System.out.println(30);
break;
default:
System.out.println("输入有误");
break;
}
}
}