698
说明
1、EnumSet可以存储一个枚举中的元素,它提供了一种通过集合来操作枚举类的方式。
2、EnumSet中的所有元素都必须指定枚举类型的枚举值,这种枚举类型在创建EnumSet时是显性的或隐性的。
实例
/** *EnumSet的设计充分考虑到了速度因素,因为它必须与非常高效的bit标志相竞争(其操作与HashSet相比,非常地快).<br> *就其内部而言,它(可能)就是将一个long值作为比特向量,所以EnumSet非常快速高效。<br> *使用EnumSet的优点是,它在说明一个二进制位是否存在时,具有更好的表达能力,并且无需担心性能。 */ privatestaticvoidenumSet(){ //空构造器 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基础