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));
相关推荐
P.H. Infinity28 分钟前
【RabbitMQ】04-发送者可靠性
java·rabbitmq·java-rabbitmq
生命几十年3万天32 分钟前
java的threadlocal为何内存泄漏
java
caridle43 分钟前
教程:使用 InterBase Express 访问数据库(五):TIBTransaction
java·数据库·express
萧鼎1 小时前
Python并发编程库:Asyncio的异步编程实战
开发语言·数据库·python·异步
学地理的小胖砸1 小时前
【一些关于Python的信息和帮助】
开发语言·python
疯一样的码农1 小时前
Python 继承、多态、封装、抽象
开发语言·python
^velpro^1 小时前
数据库连接池的创建
java·开发语言·数据库
苹果醋31 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx
秋の花1 小时前
【JAVA基础】Java集合基础
java·开发语言·windows
小松学前端1 小时前
第六章 7.0 LinkList
java·开发语言·网络