在java枚举中可以结合集合进行操作,这里生成了一个新的类EnumSet。除此之外还有一个EnumMap集合需要我们掌握。下面我们就枚举集合的两种类进行说明,重点讲解EnumSet类的方法、代码及实例的使用。下面我们一起来看看枚举结合在java中的用法及代码操作吧。
1.枚举集合说明
java.util.EnumSet和java.util.EnumMap是两个枚举集合。EnumSet保证集合中的元素不重复;EnumMap中的 key是enum类型,而value则可以是任意类型。
2.EnumSet类的方法
3.EnumSet代码
123456789101112131415161718192021222324252627 enum Color {RED, GREEN, BLUE;}public class EnumSetDemo {public static void main(String args[]) {// 声明一个EnumSet对象EnumSet<Color> esOld = null;EnumSet<Color> esNew = null;// 将枚举的全部类型设置到EnumSet对象之中esOld = EnumSet.noneOf(Color.class);// 增加内容esOld.add(Color.RED);// 增加内容esOld.add(Color.GREEN);// 从已有的集合拷贝过来esNew = EnumSet.copyOf(esOld);print(esNew);}// 专门的输出操作public static void print(EnumSet<Color> temp) {// 循环输出EnumSet中的内容for (Color c : temp) {System.out.print(c + "、");}System.out.println();}}
4.EnumSet实例
import java.util.EnumSet; enum Demo1 { RED, BLACK, BLUE, PINK, WHITE }; public class EnumDemo1 { public static void main(String[] args) { EnumSet1<Demo1> a1, a2, a3, a4; a1 = EnumSet1.of(Demo1.RED, Demo1.BLACK, Demo1.BLUE, Demo1.PINK, Demo1.WHITE); a2 = EnumSet1.complementOf(a1); a3 = EnumSet1.allOf(Demo1.class); a4 = EnumSet1.range(Demo1.RED, Demo1.PINK); System.out.println("a 1: " + a1); System.out.println("a 2: " + a2); System.out.println("a 3: " + a3); System.out.println("a 4: " + a4); } }
以上就是java中枚举集合的使用,相信大家已经初步掌握EnumSet的方法,如果对另一个EnumMap集合感兴趣,也可以自行查阅资料,这里就不再叙述了。