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));
相关推荐
小画家~8 分钟前
第四十六: channel 高级使用
java·前端·数据库
天天进步201521 分钟前
【Nanobrowser源码分析4】交互篇: 从指令到动作:模拟点击、滚动与输入的底层实现
开发语言·javascript·ecmascript
Li_yizYa21 分钟前
Redis-常见数据类型及应用场景
java·数据库·redis
麦兜*27 分钟前
【springboot】图文详解Spring Boot自动配置原理:为什么@SpringBootApplication是核心?
android·java·spring boot·spring·spring cloud·tomcat
console.log('npc')28 分钟前
vue2中子组件父组件的修改参数
开发语言·前端·javascript
码点28 分钟前
【无标题】日文字库Japan.ini
开发语言
IT=>小脑虎32 分钟前
2026版 Python零基础小白学习知识点【基础版详解】
开发语言·python·学习
rabbit_pro40 分钟前
Java使用Mybatis-Plus封装动态数据源工具类
java·python·mybatis
wjs202442 分钟前
抽象工厂模式
开发语言
lly20240643 分钟前
SVG 模糊效果详解
开发语言