如何解决此 JDK 限制?

2022-09-01 04:09:32

我正在从Java集合框架中寻找一个不允许空元素的类。

你知道一个吗?


答案 1

用:Constraints

import com.google.common.collect.Constraints;
...
Constraints.constrainedList(new ArrayList(), Constraints.notNull())

来自番石榴,提供最大的灵活性。

更新:番石榴约束在版本15中被弃用 - 显然没有替代品。

更新 2:截至目前(Guava 19.0-rc2),Constrains仍然存在,不再被弃用。但是,Javadoc中缺少它。

恐怕Javadoc是正确的,因为在版本19中也被弃用了。MapConstraint


答案 2

大多数队列实现(除了LinkedList之外)不接受 。null

EnumSet 是一个特殊用途的实现,不允许使用值。Setnull