java - 如何检查 Multimap 的值是否为 null 或为空?

标签 java guava multimap

我正在使用 Guava 的 Multimap,如下所示,因为我可以多次使用相同的键但具有不同的值。

Multimap<Long, Plesk> map = ArrayListMultimap.create();
// populate data into map

// extract value from the above map
Collection<Plesk> plesk = map.get(id);

现在,我从同一个多重映射中提取一个特定的键值。现在我如何检查 plesk 变量是否为 null?打印出 map 变量后,我看到一个条目为:

1100178=[null]

so plesk 变量的 id 1100178 的值为 [null] ,如果我使用下面的代码来检查 null 和空,那么它不起作用:

if (CollectionUtils.isEmpty(plesk)) {
    // do stuff
}

检查 multimap 的值是否为 null 的正确方法是什么?

最佳答案

Multimap.get(key) 的结果永远不会 null。如果没有与该键关联的值,它将返回一个空的Collection

您的 plesk 集合似乎是具有单个元素的集合,并且该单个元素为 null

关于java - 如何检查 Multimap 的值是否为 null 或为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42798681/

相关文章:

java - 将不可变列表传递给 ImmutableList.copyOf()?

java - 如何不给Guava的LoadingCache添加空值?

java - 如何在 Android 上用 Java 创建多图

java - 如何确保长时间运行的 Java 线程永不消亡

java - 将多张照片发布到 Facebook 时间轴

java - google guava lib 中 newArrayList(E... elements) 的好奇心

java - MutilMap 中单键的返回方法

c++ - 很难在 multimap<Class object, enum> 上使用 max_element(也有 min_element)

java - 如何正确使用线程池并从线程中获取结果?

java - Android 中事件监听器的超时检测