您现在的位置是:首页 > java技术交流java技术交流

java Map删除值为null的元素 lamada表达式一行代码就搞定

上善若水2020-06-10 18:14:50【java技术交流】 65人已围观

简介由于map在使用foreach循环中删除元素的话会报空指针异常,只能采用迭代器的方式删除元素,写好代码后编译器竟然意外的提示我将代码改成lamada表达式,瞬间代码精简,idea牛逼!map.entr

由于map在使用foreach循环中删除元素的话会报空指针异常,只能采用迭代器的方式删除元素,写好代码后编译器竟然意外的提示我将代码改成lamada表达式,瞬间代码精简,idea牛逼!map.entrySet().removeIf(entry -> entry.getValue() == null);
普通删除map空值

Map<String, String> params=new HashMap<>();
        params.put("ccc","null");
        params.put("bbb","");
        params.put("aaa",null);
        params.put("ggg",null);
        Iterator<Map.Entry<String, String>> it = params.entrySet().iterator();
        while(it.hasNext()){
            Map.Entry<String, String> entry = it.next();
            if(entry.getValue() == null)
                it.remove();//使用迭代器的remove()方法删除元素  
        }

idea给出提示image.png
修改后的代码,瞬间清爽了!真一行搞定

Map<String, String> params=new HashMap<>();
        params.put("ccc","null");
        params.put("bbb","");
        params.put("aaa",null);
        params.put("ggg",null);        
        params.entrySet().removeIf(entry -> entry.getValue() == null);

运行结果
image.png

Tags: lamada表达式

很赞哦! (0)

相关文章

文章评论

站点信息

  • 建站时间:2019-10-24}
  • 网站程序:Thinkphp6 Layui}
  • 文章统计520篇文章
  • 标签管理标签云
  • 统计数据cnzz统计
  • 微信公众号:扫描二维码,关注我们