当前位置: 首页 > article >正文

list转map(根据某个或多个属性分组)

需要将对应的list换成本地list,和对象换成本地对象

1、List转Map<String,List>

// 根据一个字段分组
Map<String, List<String>> map = objectLists.stream()
                .collect(Collectors.groupingBy(
                        Object::getName,
                        Collectors.mapping(Object::getId, Collectors.toList())));

// 根据多个字段分组
Map<String, List<Object>> groupMap = objectLists.stream().collect(
                Collectors.groupingBy(s->s.getId()+s.getName()));


// 把某属性作为key,对应的Object对象作为value     	   
Map<String, List<Object>> groupMap = objectLists.stream().collect(
                Collectors.groupingBy(Object::getName));

2、List转Map<String,List>

Map<String, List<String>> studentMap = studentList.stream()
                .collect(Collectors.groupingBy(
                        Object::getId,
                        Collectors.mapping(Object::getName, Collectors.toList())
                ));

http://www.kler.cn/news/134964.html

相关文章:

  • 基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(六)
  • JAVA必应回答。
  • 参加了南京 GDG 活动:这些精彩的技术讨论,值得与你分享~
  • 基于RFID的自动化仓储设备研发项目可行性研究报告
  • 【Linux基础】中断子系统 -- 内核宏 CONFIG_SPARSE_IRQ
  • leetcode面试经典150题——29 三数之和
  • C++ 继承和派生 万字长文超详解
  • 基本算法:二分
  • 【Linux】vscode远程连接ubuntu,含失败解决方案
  • 【实用技巧】更改ArduinoIDE默认库文件位置,解放系统盘,将Arduino15中的库文件移动到其他磁盘
  • nvm的下载与使用
  • TEE威胁评分与评级
  • 大数据-之LibrA数据库系统告警处理(ALM-12057 元数据未配置周期备份到第三方服务器的任务)
  • Sam Altman重回OpenAI,工牌成亮点
  • 新版Testwell CTC++带来哪些新变化?
  • 根据表名动态获取数据
  • 拼多多官方开放平台接口app商品详情接口获取实时商品详情数据演示
  • 【ISP图像处理】Demosaic去马赛克概念介绍以及相关方法整理
  • BUG 随想录 - Java: 程序包 com.example.xxx 不存在
  • 42、element表格内容溢出自动往上滚动,鼠标移入停止滚动,溢出继续滚动
  • 【前端学java】Java中的异常处理(15)完结
  • 【面试经典150 | 算术平方根】
  • SELinux零知识学习十九、SELinux策略语言之类型强制(4)
  • SpringCloud微服务:Nacos的集群、负载均衡、环境隔离
  • 设置 wsl 桥接模式
  • 为什么越来越多人选择学习Python?
  • SystemV共享内存
  • 一生一芯18——Chisel模板与Chisel工程构建
  • 安防视频监控平台EasyCVR服务器部署后出现报错,导致无法级联到域名服务器,该如何解决?
  • 数据结构——树状数组