37EnumSet详解

Posted JustDo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了37EnumSet详解相关的知识,希望对你有一定的参考价值。

  EnumSet类也是有顺序的,EnumSet按照枚举值在Enum类内定义的顺序决定集合元素的顺序

  EnumSet在内部已位向量的形式存储,这种存储方式非常紧凑、搞笑,因此EnumSet占用内存很小,而且运行效率很好。

  EnumSet集合不允许加入null元素

  EnumSet常用的方法:

  1)、EnumSet allOf(Class elementType):创建一个包含指定枚举类里所有枚举值得EnumSet集合

  2)、EnumSet complementOf(EnumSet s):创建一个气元素类型和指定EnumSet元素类型相同的EnumSet集合,新的ENumSet集合包含原EnumSet集合所有不包含的元素。也就是新的EnumSet集合和指定的EnumSet集合元素相加即为该枚举类里的所有元素

  3)、EnumSet copyOf(Collection c):使用一个普通集合来创建EnumSet集合,要求Collection集合里都是枚举元素,且类型都相同。否则会抛出ClassCastException异常

  4)、EnumSet copyOf(EnumSet s):创建一个与指定

 

以上是关于37EnumSet详解的主要内容,如果未能解决你的问题,请参考以下文章

Java中EnumSet的copyOf()方法: Java.util.EnumSet.copyOf()

在 EnumSet 和布尔值数组之间转换

Typescript GraphQL 等效于 EnumSet

计算机程序的思维逻辑 (51) - 剖析EnumSet

为什么EnumSet是作为抽象类实现的,而EnumMap是作为具体类实现的?

java枚举方面的问题,见问题补充