• 技术文章 >java >java基础

    java中EnumSet的使用

    小妮浅浅小妮浅浅2021-08-09 10:44:12原创4206

    说明

    1、EnumSet可以存储一个枚举中的元素,它提供了一种通过集合来操作枚举类的方式。

    2、EnumSet中的所有元素都必须指定枚举类型的枚举值,这种枚举类型在创建EnumSet时是显性的或隐性的。

    实例

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    /**

      * EnumSet 的设计充分考虑到了速度因素,因为它必须与非常高效的 bit 标志相竞争(其操作与 HashSet 相比,非常地快).<br>

      * 就其内部而言,它(可能)就是将一个 long 值作为比特向量,所以 EnumSet 非常快速高效。<br>

      * 使用 EnumSet 的优点是,它在说明一个二进制位是否存在时,具有更好的表达能力,并且无需担心性能。

      */

     private static void enumSet() {

         // 空构造器

         EnumSet<WeekEnum> weekEnums = EnumSet.noneOf(WeekEnum.class);

         weekEnums.add(WeekEnum.MON);

         weekEnums.add(WeekEnum.TUE);

         weekEnums.add(WeekEnum.WEB);

         // of工厂,可以接收多个enum

         weekEnums.addAll(EnumSet.of(WeekEnum.THUR, WeekEnum.FRI, WeekEnum.SAT, WeekEnum.SUN));

         System.out.println(weekEnums);

         // range-范围

         weekEnums.removeAll(EnumSet.range(WeekEnum.MON, WeekEnum.WEB));

         System.out.println(weekEnums);

         // 创建一个与指定枚举集具有相同元素类型的枚举集,最初包含指定集中未包含的所有此类型的元素。

         weekEnums = EnumSet.complementOf(weekEnums);

         System.out.println(weekEnums);

     }

    以上就是java中EnumSet的使用,希望对大家有所帮助。更多Java学习指路:Java基础

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    专题推荐:java enumset
    上一篇:java如何指定枚举的行为 下一篇:java中有哪些基本注解

    相关文章推荐

    • java伪泛型的介绍• java虚拟机中栈的运行原理• java局部变量表的介绍• java操作数栈的介绍• java中方法重写的本质• java中Process是什么• java如何指定枚举的行为

    全部评论我要评论

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

  • 取消发布评论
  • 

    Python学习网