JAVA的选择结构(二)

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.韩嫣参加计算机编程大赛
    如果获得第一名,将参加麻省理工大学组织的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.   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/ws1149939228/p/9031941.html