java8 快速实现List转map 、分组、过滤等操作
转自:https://blog.csdn.net/lu930124/article/details/77595585/
//List里面的对象元素,以某个属性来分组,例如,以id分组,将id相同的放在一起
//List 以ID分组 Map<Long,List<Sku>>
Map<Long, List<Sku>> mapList = skuList.stream().collect(Collectors.groupingBy(Sku::getProductSpecificationId));
System.out.println(mapList);
//List转Map
Map<Long, Sku> appleMap = skuList.stream().collect(Collectors.toMap(Sku::getProductSpecificationId, item -> item));
System.out.println(appleMap);
//获取 List 集合获取指定的字段数组
List<Vip> vipList = new ArrayList<Vip>();
vipList.add(new Vip().setId(1L));
vipList.add(new Vip().setId(2L));
List<Long> idList = vipList.stream().map(Vip::getId).collect(Collectors.toList());
List转换逗号分隔的字符串
StringUtils.join(productSpecificationIdList.toArray(), ",")
//Set转List
Set<String> idSet = buyerCartMap.keySet();
List<Long> productSpecificationIds = Arrays.asList(idSet.toArray(new Long[idSet.size()]));
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix