我正在从另一台服务器的方法中获取一个映射,并且我有一些空值,我想删除那些空值,因为在以下过程中我在努力处理这些值:
我已经完成了下一个代码,但是没有令人满意的结果:
map.values().removeAll(Collections.singleton(null))
有什么想法吗?
谢谢
答案 0 :(得分:3)
Groovy方式是过滤所需条目:
def map = [a:42, b:null]
def cleanMap = map.findAll{ it.value!=null }
println cleanMap
// => [a:42]
似乎可以与Jdk8 / Groovy 2.5一起使用,但不适用于OP
要删除所有值为null
的元素,请直接在地图上删除:
def map = [a:42, b:null]
map.removeAll{ it.value == null }
println map
// => [a:42]