• if选择结构解析(二)


    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("		1.登录系统");
                        System.out.println("		2.退出");
                        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("请输入正确的数字:");
                        }
                    }
                }
  • 相关阅读:
    Sql Server Report 导出到EXCEL 指定行高
    SQLSqlserver中如何将一列数据,不重复的拼接成一个字符串
    SQL Server Management Studio无法记住密码
    nuget.org无法解析的办法
    js获取select标签选中的值及文本
    Word 如何实现表格快速一分为二
    sql server rdl report 如何用动态sql
    浏览器窗口刷新
    SWFUpload 在ie9上出现的bug
    历数PC发展史上的祖先们
  • 原文地址:https://www.cnblogs.com/bk1234/p/9031709.html
Copyright © 2020-2023  润新知