高效的枚举元素集合

来源:互联网 发布:端口名称怎么查 编辑:程序博客网 时间:2024/06/05 18:01

枚举类型的中的元素不能随意的增加,EnumSet是专门为enum实现的集合类

EnumSet 在内部用比特向量表示。这种结构特别紧凑和高效。可以高质量的

替代传统的“位标志”。示例代码如下

week 枚举类的内容如下

public enum Week {   MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURADAY,SUNDAY;}

public class EnumSetTest {  
  public static void main(String args[])    {   
 EnumSet<Week>  eset=EnumSet.noneOf(Week.class);//创建一个 EnumSet;  
  eset.add(THURSDAY);  
  System.out.println(eset);     //添加剩余元素    //complementOf(EnumSet<E> s)  创建一个EnumSet 其中的元素是S的补集;  
  eset.addAll(EnumSet.complementOf(eset));        
System.out.println(eset);    }
}


不能在EnumSet中增加NUll元素,否则会报空指针错误