Java中关于List的一些常用操作

先定义一个List,代码如下

java 复制代码
//定义一个实例类
public class Model{
    private String id;

    private String code;

    private String name;

    //setter  getter 方法省略

}

//定义一个List,赋值过程省略
List<Model> list = new ArrayList<>();

1.将List中每一个对象的id取出,组装成新的List

java 复制代码
//示例代码
List<String> idList = list.stream().map(Model::getId).collect(Collectors.toList());

2.将List对象中取出组装成map,要求map的key是code值,value是code相同的Model类

java 复制代码
//示例代码
Map<String,List<Model>> codeMap = list.stream().collect(Collectors.groupingBy(e -> e.getCode()));

3.将List对象中的code和name的值取出,组装成一个map.(注意:如果code值重复,后赋值的name会覆盖先赋值的name值)

java 复制代码
//示例代码
Map<String, String> map = list.stream().collect(Collectors.toMap(Model::getCode,Person::getName));
相关推荐
重生之后端学习16 小时前
438. 找到字符串中所有字母异位词[中等]✅
开发语言·数据结构·算法·leetcode·职场和发展
晴天1616 小时前
Gradio 与 Streamlit:Python 快速构建 Web 应用的双子星-Day28
开发语言·前端·python
nxb55616 小时前
云原生:控制器
java·开发语言·云原生
咖啡八杯16 小时前
统一返回对象设计:AjaxResult 与 R 的取舍
java·spring boot·框架·若依·返回值
whcyhhh16 小时前
头歌实践教学平台:数据科学与大数据技术导论(十)
大数据·开发语言·python
小手cool17 小时前
JSON.parseObject 返回 List 时不能强制转换的解决方案
java·json·list
凯酱18 小时前
MyBatis 中 OGNL 的使用:从入门到实战
java·tomcat·mybatis
豆沙沙包?1 天前
C++~~~stack容器、queue容器、list容器(p45-P56)
c++·windows·list
Data_Journal1 天前
用于网页抓取的 Node-unblocker
大数据·开发语言·数据库·python·scrapy
吴声子夜歌1 天前
Java面试——算法
java·算法·面试