1.switch语句的基本语法
switch(expression){ case 目标值1 : //语句 break; //可选 case 目标值2 : //语句 break; //可选 ....... default : //可选 //语句 }
2.规则
(1)在switch(expression)中的expression类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
(2)switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号,每个case后面的常量类型要与switch括号中的expression变量相同。
3.参考案例
3.1第一种情况
(1)当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。
(2)switch 语句可以包含一个 default 分支,该分支一般是 switch 语句的最后一个分支(可以在任何位置,但建议在最后一个)。default 在没有 case 语句的值和变量值相等的时候执行。default 分支不需要 break 语句。
import java.util.Scanner; public class AutoSales { public static void main(String[] args) { int choose=0; System.out.println("-----------------------"); System.out.println("1.cococola"); System.out.println("2.fender"); System.out.println("3.coffee"); System.out.println("4.water"); System.out.println("5.tea"); System.out.println("-----------------------"); System.out.println("请选择饮料序号:"); Scanner ins = new Scanner(System.in); choose = ins.nextInt(); switch (choose) { case 1:System.out.println("you choose cococola!");break; case 2:System.out.println("you choose fender!");break; case 3:System.out.println("you choose coffee!");break; case 4:System.out.println("you choose water!");break; case 5:System.out.println("you choose tea!");break; default:System.out.println("your choose is wrong!");break; } } }
运行结果:根据输入的序号,输出对应的饮料名称
3.2第二种情况
如果没有 break 语句出现,程序会从匹配的第一个case开始执行,一直继续执行下一条 case 语句,直到出现 break 语句。
switch (choose) { case 1:System.out.println("you choose cococola!"); case 2:System.out.println("you choose fender!"); case 3:System.out.println("you choose coffee!"); case 4:System.out.println("you choose water!");break; case 5:System.out.println("you choose tea!");break; default:System.out.println("your choose is wrong!");break;
运行结果:
3.3第三种情况
多条case语句共享一个输出语句块。以下1,2,3,4种情况都输出同一条语句System.out.println("you choose water!");break;
switch (choose) { case 1: case 2: case 3: case 4:System.out.println("you choose water!");break; case 5:System.out.println("you choose tea!");break; default:System.out.println("your choose is wrong!");break; }
参考文章:
https://www.runoob.com/java/java-switch-case.html
https://www.cnblogs.com/wuyuegb2312/p/11172440.html