码迷,mamicode.com
首页 > 其他好文 > 详细

3.8.5 多重选择:switch语句

时间:2018-12-15 17:25:50      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:tin   ext   string   多个   执行   分支   medium   sel   lse   

    在处理多个选项时,使用if/else结构显得有些笨拙。
 
            Scanner in = new Scanner(System.in);
            System.out.println("Select an option (1, 2, 3, 4)");
            int choice = in.nextInt();
            
            switch(choice){
            case 1:
                  System.out.println(1);
                  break;
                  
            case 2:
                  System.out.println(2);
                  break;
                  
            case 3:
                  System.out.println(3);
                  break;
                  
            case 4:
                  System.out.println(4);
                  break;
            default:
                  System.out.println("输入有误");
                  break;
            }
 
    switch语句将从与选项值相匹配的case标签处开始执行直到遇到break语句,或者执行到switch语句的结束处为止。如果没有相匹配的case标签,而有default子句,就执行这个子句。
 
    警告:有可能触发多个case分支。如果在case分支语句的末尾没有break语句,那么就会接着执行下一个case分支语句。
 
    case标签可以是:
  • 类型为 char、byte、short、或 int 的常量表达式
  • 枚举常量
  • 从 Java SE 7开始,case 标签还可以是字符串字面量。
 
 
当在switch语句中使用枚举常量时,不必在每个标签中指明枚举名,可以由switch的表达式确定。例如:
 
enum Size{SMALL, MEDIUM, LARGE, EXTRA_LARGE};
      public static void main(String[] args){
            
            Size choice = Size.MEDIUM;
            
            switch(choice){
            case SMALL:
                  System.out.println(1);
                  break;
                  
            case MEDIUM:
                  System.out.println(2);
                  break;
                  
            case LARGE:
                  System.out.println(3);
                  break;
                  
            case EXTRA_LARGE:
                  System.out.println(4);
                  break;
            default:
                  System.out.println("输入有误");
                  break;
            }
      }
 
 
 
 
 

3.8.5 多重选择:switch语句

标签:tin   ext   string   多个   执行   分支   medium   sel   lse   

原文地址:https://www.cnblogs.com/avention/p/10123729.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!