Steam流用法:将list集合中具有相同属性的对象放入到一个新的list

Steam流用法:将list集合中具有相同属性的对象放入到一个新的list

背景:

由于地图打点坐标需求将list数据中经度、纬度和方位角相同的数据,放到一个新的list中去并根据这些相同元素进行分组

解决方案:

采用java8的特性之一Stream方法,使用Stream方法,并且使用Collectors的groupingBy 按照对象的什么属性字段进行分组方法,然后分组出来后得到一个Map集合

java 复制代码
        List<List<NetworkOutputTableVO>> result = new ArrayList<>();

      Map<String, List<NetworkOutputTableVO>> personMap = mapData.stream().collect(Collectors.groupingBy(item -> item.getLatitude()+item.getLongitude()+item.getAzimuth()));
                    Set<Map.Entry<String, List<NetworkOutputTableVO>>> entries2 = personMap.entrySet();
                    for (Map.Entry<String, List<NetworkOutputTableVO>> entry : entries2) {
                        result.add(entry.getValue());
                    }
相关推荐
一级新生6 小时前
LLM _ Agent _ Skill _ 专家 的关系与选型笔记
java·开发语言·人工智能·笔记·大模型·智能体·skill
文丑颜不良啊6 小时前
LeetCode1541~1560题目解析
java·leetcode
她说彩礼65万6 小时前
C# TaskCompletionSource
java·开发语言·c#
YSL0701246 小时前
一文通关-----树和二叉树
数据结构·算法
小糯米6016 小时前
数据结构 数组与链表 内存与缓存
数据结构
当战神遇到编程6 小时前
Java 基础入门(七):递归详解——执行原理、方法调用栈与经典练习
java
若亦_6 小时前
排序>>交换排序
java·数据结构·算法
Wang's Blog7 小时前
MongoDB 地理位置上报实战:从接口设计到覆盖写入的完整实现
java·交友
努力努力再努力wz7 小时前
【Lua 入门系列】Lua数据结构:从 Table 出发,一文串联数组、链表、栈、队列、集合、映射与树的实现原理
数据结构·链表·lua
鬼手点金7 小时前
Skills:领域能力的可组合单元
java·人工智能·笔记·自动化·1024程序员节