选择结构

笔记:

      

1.switch选择结构:
      语法:
            switch (key) {
                   case value:
         
                  break;
                  case value:
         
                break;
         case value:
         
               break;
              default:
         
               break;
         }
       根据key去匹配value的值,如果value的值跟key相同则走case块中的代码,然后执行完毕后结束,如果所有case块都不匹配则会走default
       如果想让case块执行完毕后跳出选择结构则在case块结尾处添加break
      案例:
       /*


        韩嫣参加计算机编程大赛
        如果获得第一名,将参加麻省理工大学组织的1个月夏令营
        如果获得第二名,将奖励惠普笔记本电脑一部
        如果获得第三名,将奖励移动硬盘一个
        否则,不给任何奖励


       */
       public class Demo01 {
              public static void main(String[] args) {
                     Scanner input = new Scanner(System.in);
                    System.out.println("请输入名次:");
                     char count = input.next().charAt(0);
          /*
          *
          * 韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 如果获得第二名,将奖励惠普笔记本电脑一部
          * 如果获得第三名,将奖励移动硬盘一个 否则,不给任何奖励
          */
                switch (count) {
                      case '一':
                       System.out.println("参加麻省理工大学组织的1个月夏令营 ");
                       break;
                     case '二':
                       System.out.println("奖励惠普笔记本电脑一部");
                       break;
                       case '三':
                      System.out.println("奖励移动硬盘一个");
                      break;
                       default:
                           System.out.println("没有奖励!");
                      break;
                }
           }
       }
  2.注意问题:

   1.case后面的常量必须各不相同
   2.如果需要每个case执行完后跳出,在每个case后不要忘记写break;
   3.default块顺序可以变动,但要注意其执行顺序。通常,default块放在末尾,也可以省略

  3.多重if选择结构和switch比对

   相同点:
    都是用来处理多分支条件的结构

   不同点:
    switch选择结构
     只能处理等值条件判断的情况

    多重if选择结构
     没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况

  4.总结选择结构:
   if选择结构
   基本if选择结构: 处理单一或组合条件的情况
   if-else选择结构:处理简单的条件分支情况
   多重if选择结构:处理复杂的条件分支情况
   嵌套if选择结构:用于较为复杂的流程控制

   switch选择结构
   多重分支并且条件判断是等值判断的情况

  5.使用hasNextInt()解决用户从控制台输入为非整型问题
   public class Demo02 {
            public static void main(String[] args) {
                  Scanner input=new Scanner(System.in);
                  System.out.println("欢迎光临我行我素管理系统");
                  System.out.println("\t\t1.登录系统");
                  System.out.println("\t\t2.退出");
                  System.out.println("请选择:");
     
       if(input.hasNextInt())
                         {
           int number=input.nextInt();
              switch (number) {
                     case 1:
                     System.out.println("欢迎登录系统!!");
                       break;
                       case 2:
                       System.out.println("您退出了系统!!");
                       break;
                      default:
                      System.out.println("没有输入选项");
                      break;
          }
      
      
                         }else{
                        System.out.println("请输入正确的数字:");
                }
             }
   }

案例1:

     switch (count) {
                      case '一':
                       System.out.println("参加麻省理工大学组织的1个月夏令营 ");
                       break;
                     case '二':
                       System.out.println("奖励惠普笔记本电脑一部");
                       break;
                       case '三':
                      System.out.println("奖励移动硬盘一个");
                      break;
                       default:
                           System.out.println("没有奖励!");
                      break;
                }
           }
       }

案例2:

public class Demo02 {
            public static void main(String[] args) {
                  Scanner input=new Scanner(System.in);
                  System.out.println("欢迎光临我行我素管理系统");
                  System.out.println("\t\t1.登录系统");
                  System.out.println("\t\t2.退出");
                  System.out.println("请选择:");
     
       if(input.hasNextInt())
                         {
           int number=input.nextInt();
              switch (number) {
                     case 1:
                     System.out.println("欢迎登录系统!!");
                       break;
                       case 2:
                       System.out.println("您退出了系统!!");
                       break;
                      default:
                      System.out.println("没有输入选项");
                      break;
          }
      
      
                         }else{
                        System.out.println("请输入正确的数字:");
                }
             }
   }

猜你喜欢

转载自www.cnblogs.com/1314Justin/p/9032647.html