gpt4 book ai didi

java - 如何从 HashMap 中过滤 "Null"值?

转载 作者:IT老高 更新时间:2023-10-28 21:04:14 25 4
gpt4 key购买 nike

下面的 map ,有两个键值对作为字符串,编写一个逻辑来过滤来自 map 的所有空值而不使用任何外部API?

除了遍历整个 map 并过滤掉值(遍历整个 map 并获取条目对象并丢弃这些对)之外,还有其他方法吗?

        Map<String,String> map = new HashMap<String,String>();

map.put("1", "One");
map.put("2", "Two");
map.put("3", null);
map.put("4", "Four");
map.put("5", null);
//Logic to filer values
//Post filtering It should print only ( 1,2 & 4 pair )

最佳答案

您可以使用 Java 8 方法 Collection.removeIf为此目的:

map.values().removeIf(Objects::isNull);

这删除了所有为空的值。

Online demo

这是因为为 HashMap 调用 .values() 会返回一个集合,该集合将修改委托(delegate)给 HashMap 本身,这意味着我们对 removeIf() 的调用> 实际上改变了 HashMap(这不适用于所有 java Map)

关于java - 如何从 HashMap<String, String> 中过滤 "Null"值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35863581/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com