当前位置: 首页 > 知识库问答 >
问题:

使用Java8[duplicate]从另一个列表中提取对象列表

燕博文
2023-03-14
List<Customer> customers = findAllCustomer();   

public class Customer implements Serializable {

    private State state;

    //getter and setter

我在下面使用JDK7进行了探讨

List<State> states = new ArrayList<>();

for (Customer customer : customers) {
    states.add(customer.getState());
}   

共有1个答案

上官思博
2023-03-14

对内容进行流式处理,映射以获取状态并将其作为列表收集。

customers.stream()
    .map(Customer::getState)
    .collect(Collectors.toList());

如果需要arraylist作为结果列表

customers.stream()
    .map(Customer::getState)
    .collect(Collectors.toCollection(ArrayList::new));
 类似资料:
  • 我有一个学生名单a和学生名单B。 学生对象包含如下字段:否、年龄、城市、出生日期、工资 我的列表A包含这些对象 我的列表B包含这些对象 我想做的是提取ListA有但listB没有的学生对象,以及ListA和listB有但薪水不同的学生对象(如否、年龄、城市)。我还想写工资差异。 我想在java 8中使用流api。首先,我想将students对象提取到列表中,但我现在可以提取常见的student对象

  • 我试图理解Java8流。我有两门课: 以及: 字段应指示全天的卡路里总量是否为。该字段与当天的所有条目相同。 我试图从

  • 问题内容: 我有以下Java6和Java8代码: Java8中有什么方法可以使用Lambda以更简洁的方式处理前一个问题? 问题答案: 流绑定到给定的可迭代/集合,因此您不能真正地“并行”迭代两个集合。 一种解决方法是创建索引流,但不一定比for循环有所改进。流版本可能如下所示:

  • 我有一个对象列表(文件夹)。该列表中的每个对象A都有一个对象B(合作伙伴)列表,对象B也有一个对象C(人员)列表。对象C包含一个属性代码,我想用它来使用Java8进行过滤。 我试过下面的代码,但它似乎不工作: 你们知道我如何使用FlatMap从

  • 我有一个包含两个成员的类和该类的对象列表。现在我想从对象列表中提取成员列表。 例如: 现在我需要从学生列表中检索studentName列表。如何使用java8流实现这一点? 不使用流的解决方案:

  • 我有两个对象列表,它们在两个列表中都有重复名称。我需要从清单2中删除清单1中的所有重复值。 下面是一个场景,类有名称变量,用这个变量需要检查清单1中的重复值并需要删除。 //这是具有3个对象的第一个列表 清单1大小为1 请建议我在Java8与流。