Java 7 中是否有 ImmutableEnumSet 的计划?

2022-09-01 18:50:34

我想拥有EnumSet的所有效率,并在不用担心有人会修改它的情况下传递它。


答案 1

答案 2

包装一个有什么问题?Collections.unmodifiableSet()EnumSet

没错,原始引用仍然是可变的,但只要你丢弃原始引用,它就和包装器内的不可变一样好。EnumSet

编辑:好的,由于不提供接口之上的任何实例方法,因此不使用此解决方案的唯一原因是该类型对于文档目的很有用,并且在将其包装在.除此之外,行为将被保留。EnumSetSetEnumSetSetEnumSet