• 技术文章 >java >java基础

    switch在java枚举中的用法

    小妮浅浅小妮浅浅2021-01-07 13:47:01原创4550

    在进行程序控制时,使用switch的数据类型有所限制,其中case后面的条件也有一定的要求。结合枚举的方法后,switch的使用范围得到了扩大,在操作上也趋向于简洁化。下面我们就switch语法进行简单回顾,然后就在java枚举实例的使用展开分析,体验其用法的变化。

    1.switch语法

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    switch(表达式){

        case 值1:

             语句;

            break;

        case 值2:

            语句;

            break;

             

        .......

        default:

           语句;

    }

    case 值:case翻译过来就是情况、实例的意思,那么这句可以理解为当switch(表达式)的结果为case中的值时,则执行该case下的语句。

    2.switch在枚举的实例

    Java1.5新增enum关键字的同时,也扩大了switch的语句使用范围。Java1.5之前,switch中的值只能是简单数据类型,比如int、byte、short、char, 有了枚举类型之后,就可以使用枚举类的对象了。

    同时switch表达式中使用enum定义的枚举类的对象作为表达式时, case子句可以直接使用枚举对象的名字, 无需添加枚举类作为限定。这样一来,程序的控制选择就变得更加的方便,看下面的例子:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    public enum  WeekDay {

        // 定义一周七天的枚举类型

        Monday,Tuesday, Wednesday ,Thursday,Friday,Saturday,Sunday;

    }

      

    class Test{

        public static void getDay(WeekDay weekDay){

            switch (weekDay){

                case Monday:

                    System.out.println("Today is Monday");

                    break;

                case Tuesday:

                    System.out.println("Today is Tuesday");

                    break;

                case Wednesday:

                    System.out.println("Today is Wednesday");

                    break;

                case Thursday:

                    System.out.println("Today is Thursday");

                    break;

                case Friday:

                    System.out.println("Today is Friday");

                    break;

                case Saturday:

                    System.out.println("Today is Saturday");

                    break;

                case Sunday:

                    System.out.println("Today is Sunday");

                    break;

                default:

                    System.out.println("data error");

            }

        }

      

        public static void main(String[] args) {

            WeekDay sunday = WeekDay.Sunday;

            getDay(sunday);

            WeekDay friday = WeekDay.Friday;

            getDay(friday);

        }

    }

    运行结果:

    对于这些枚举的日期,JVM都会在运行期构造成出一个简单的对象实例一一对应。这些对象都有唯一的identity,类似整型数值一样,switch语句就会根据此来identity进行执行跳转。

    以上就是switch在java枚举中的用法,可以说结合枚举之后,switch的用法有了新的变化,对于代码模块的运行变得更加简单。

    专题推荐:java枚举 switch
    上一篇:java枚举中的values遍历 下一篇:java枚举中添加抽象方法

    相关文章推荐

    • java enum使用方法有几种• java枚举中的values遍历

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网