gpt4 book ai didi

java - 将 A 类对象的每个字段复制到列表中 B 类对象的每个字段

转载 作者:搜寻专家 更新时间:2023-10-31 19:51:46 27 4
gpt4 key购买 nike

我有一个 ClassA 对象列表(字段例如:id、name、phone)并且需要将这些字段中的每一个设置到另一个 ClassB 对象列表(字段:studentId、studentName 和 studentPhone)中。 Java 8 中有简单的方法吗?基本上,ClassA 是我的 DTO,ClassB 是 DAO 对象。例如:

List<ClassA> list1 = new ArrayList<>();
list1.add(new ClassA(12,"John","1111111111"))
List<ClassB> list2 = new ArrayList<>();

在这里,我想将ClassA的每个元素设置为ClassB对象并添加到list2中

最佳答案

这是非常标准的。您可以使用 Streammap 方法来修改 ClassA 的实例。

假设:

public class ClassA {
private final int id;
private final String name;
private final String phone;

public int getId() {
return id;
}

public String getName() {
return name;
}

public String getPhone() {
return phone;
}
}

public class ClassB {
private int studentId;
private String studentName;
private String studentPhone;

public void setStudentId(int studentId) {
this.studentId = studentId;
}

public void setStudentName(String studentName) {
this.studentName = studentName;
}

public void setStudentPhone(String studentPhone) {
this.studentPhone = studentPhone;
}
}

那么您的代码可能如下所示:

List<ClassA> list1 = Collections.emptyList();
List<ClassB> list2 = list1.stream()
.map(a -> {
ClassB b = new ClassB();
b.setStudentId(a.getId());
b.setStudentName(a.getName());
b.setStudentPhone(a.getPhone());
return b;
})
.collect(Collectors.toList());

关于java - 将 A 类对象的每个字段复制到列表中 B 类对象的每个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54520849/

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