gpt4 book ai didi

java - 比较不同类型的列表

转载 作者:行者123 更新时间:2023-12-01 12:05:39 27 4
gpt4 key购买 nike

我有两个列表,如下

List<MyObject1> list1
List<Long> list2

list2 基本上是 MyObject1 的 Id 列表,它是对象中的属性

Public Class MyObject1 implements Serializable{

private Long myObjId;
.....
.....
//other elements go here

public Long getMyObjId() {
return myObjId;
}

public void setMyObjId(Long myObjId) {
this.myObjId = myObjId;
}

我想比较两个列表,检查list1中的所有对象是否都包含在list2中

一种方法是迭代 list1,从中创建一个新的 Id 列表,然后对其使用 containsAll 方法。

有没有更简单的方法来达到相同的结果?

最佳答案

在 Java 8 中,您可以编写您所描述的内容:“一种方法是迭代 list1,从中创建一个新的 Id 列表,然后对其使用 containsAll 方法。”在一行中为:

list1.stream().map(a -> a.getMyObjId()).collect(Collectors.toList()).containsAll(list2);

map 通过调用 a.getMyObjectId 将每个 MyObeject 转换为 id,collect 创建一个列表结果。

关于java - 比较不同类型的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27641261/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com