zoukankan      html  css  js  c++  java
  • Java 使用 switch 语句和枚举类型

    switch 语句包被划分为一种选择语句。根据整数表达的值,进行选择操作。语句基本格式如下:

    switch (interal-selector) {
                case integral-value1: statement; break;
                case integral-value2: statement; break;
                case integral-value3: statement; break;
                case integral-value4: statement; break;
                case integral-value5: statement; break;
                default: statement;
            }

    注意点如下:

    1. interal-selector 即为整数表达式的值,他的意思是 interal-selector 本身是一个整数,或者经过运算之后产生一个整数。
    2. break 是可选的,如果没有 break 则语句会继续执行,直到遇到 break 或者运行到结尾
    3. default 表示在没有匹配的情况下默认执行的语句,由于已经是最后执行的所以不需要 break 语句,但是如果想写也可以

    注意点一

    interal-selector (或成为选择银子)需为整数表达式。很容易理解,整数表达式可以是 int 以及 int 的分装类 Integer。 同时由于, byte,short,char都可以隐含地转换成 int,所以他们也可以作为选择因子。

    而float,double,long,String 则同理不可作为选择因子。

    注意点二

    JavaSE5 中引入新特性枚举类型,可以减弱这种限制。

    创建一个枚举类型

    public enum Season {
        Spring,Summer,Autumn,Winter
    }
    

    枚举类型作为选择因子

    public class MainTest {
    
        Season season;
    
        public MainTest(Season season) {
            this.season = season;
        }
    
        public void describe() {
    
            switch (season) {
            case Spring:
                System.out.println("Today is" + " " + season);
                break;
            case Summer:
                System.out.println("Today is" + " " + season);
                break;
            case Autumn:
                System.out.println("Today is" + " " + season);
                break;
            case Winter:
                System.out.println("Today is" + " " + season);
                break;
            default:
                System.out.println("The end of the world ");
            }
    
    
        }
    
        public static void main(String[] args) {
            MainTest spring = new MainTest(Season.Spring);
            MainTest summer = new MainTest(Season.Summer);
    
            spring.describe();
            summer.describe();
        }
    }

    switch 语句需要在有限的可能集合中进行选择,而 enum 则是我们自己创建的可能集合。

    绝配!

    注意点三

    从JDK 7开始, 我们可以针对字符串使用switch条件语句了;在JDK 6或者之前的版本,我们则不能使用针对字符串的switch条件语句。

    switch (season) {
                case "aa":
                    System.out.println("Today is" + " " + season);
                    break;
                case "bb":
                    System.out.println("Today is" + " " + season);
                    break;
                case "cc":
                    System.out.println("Today is" + " " + season);
                    break;
                default:
                    System.out.println("The end of the world ");
            }
  • 相关阅读:
    【Hibernate框架】对象的三种持久化状态
    【Mybatis架构】Mapper映射文件中的#{}与${}
    【Mybatis架构】 延迟加载
    IDEA快捷键+使用小技巧
    Aop_AspectJ实现
    Aop_实践篇之过滤器
    Aop_思想篇
    超简单的Springboot中的日志管理配置
    SpringMVC+MYBatis企业应用实战笔记
    Spring学习
  • 原文地址:https://www.cnblogs.com/shuiyj/p/13185240.html
Copyright © 2011-2022 走看看