Java使用Lambda对List<Map<String,Object>>类型数据做差集

2021/4/12 20:25:21

本文主要是介绍Java使用Lambda对List<Map<String,Object>>类型数据做差集,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

二话不说上代码

public class Test{
    public static void main(String[] args) {
        String[] value1 = {"A","B","C","F"};
        String[] value2 = {"A","C","D","E","F"};
        List<Map<String,Object>> list1 = new ArrayList<>();
        List<Map<String,Object>> list2 = new ArrayList<>();
        Map<String,Object> map;
        for(String value : value1){
            map = new HashMap<>();
            map.put("zjhm",value);
            list1.add(map);
        }
        for(String value : value2){
            map = new HashMap<>();
            map.put("zjhm",value);
            list2.add(map);
        }
        // Lambda表达式
        List<Map<String, Object>> newList = list1.stream().filter(
                (mapItem) -> !list2.stream().map(item -> item.get("zjhm")
                ).collect(Collectors.toList()).contains(mapItem.get("zjhm"))
        ).collect(Collectors.toList());
        System.out.printf(newList.toString());
    }
}

结果
在这里插入图片描述
然后将这两个参数再换一下
在这里插入图片描述
在这里插入图片描述
参考自:https://segmentfault.com/q/1010000022486854/a-1020000022487184
在这里插入图片描述



这篇关于Java使用Lambda对List<Map<String,Object>>类型数据做差集的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程