Java 检查与多值映射关联的所有集合是否为非空?

Java 检查与多值映射关联的所有集合是否为非空?,java,map,Java,Map,我正在使用Apache集合中的多值映射来收集不同类型的单词(名词、动词等),我想在继续之前检查每个单词类型中是否至少有一个 大致轮廓如下(启动按键后): 但是我没有notAllEmpty()的方法。我尝试了.values().contains(null),但空映射不包含null。就像是ese.values()。isEmpty()不能工作,因为所有的值都放在一起了 是否有一种简洁的方法来检查这种情况,也许可以使用API中的方法?听起来好像您试图继续循环,直到每个键至少有一个值。如果您的数据集不完整

我正在使用Apache集合中的多值映射来收集不同类型的单词(名词、动词等),我想在继续之前检查每个单词类型中是否至少有一个

大致轮廓如下(启动按键后):

但是我没有
notAllEmpty()
的方法。我尝试了
.values().contains(null)
,但空映射不包含null。就像是ese
.values()。isEmpty()
不能工作,因为所有的值都放在一起了


是否有一种简洁的方法来检查这种情况,也许可以使用API中的方法?

听起来好像您试图继续循环,直到每个键至少有一个值。如果您的数据集不完整,这将使您面临无限循环的巨大可能性。但要说到点子上,你需要看的是键,而不是值。如果你知道有多少种单词类型,你可能应该使用下面的方法

int totalWordTypes = 10;
while (wordMap.keySet().size() < totalWordTypes) {
   //...
}

遍历所有值,并检查每个值是否为空列表。请注意,MultiValueMap不是一个标准的Java类,并且您没有说它来自何处。@JBNizet shoot!我是冲出来的,但不是我在用手机我能修好的!现在看来很明显。
int totalWordTypes = 10;
while (wordMap.keySet().size() < totalWordTypes) {
   //...
}
while (!wordMap.keySet().containsAll(wordTypesCollection)) {
   //...
}