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));
相关推荐
XuanXu30 分钟前
Java AQS原理以及应用
java
风象南3 小时前
SpringBoot中6种自定义starter开发方法
java·spring boot·后端
mghio12 小时前
Dubbo 中的集群容错
java·微服务·dubbo
咖啡教室17 小时前
java日常开发笔记和开发问题记录
java
咖啡教室17 小时前
java练习项目记录笔记
java
鱼樱前端18 小时前
maven的基础安装和使用--mac/window版本
java·后端
RainbowSea18 小时前
6. RabbitMQ 死信队列的详细操作编写
java·消息队列·rabbitmq
RainbowSea18 小时前
5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
java·消息队列·rabbitmq
我不会编程55520 小时前
Python Cookbook-5.1 对字典排序
开发语言·数据结构·python