gpt4 book ai didi

java - java中如何将属性从一个对象复制到另一个对象

转载 作者:行者123 更新时间:2023-12-05 02:41:08 26 4
gpt4 key购买 nike

我有两个对象 EmployeeCustomer具有相似的对象属性,如 name, id etc我想从 List<Employee> empList 填充对象,反之亦然至 List<Customer> customerList反之亦然。

   List<Employee> empList=getEmployeeList();
// Here is what i am trying so far
List<Customer> cutomers=new ArrayList<Customer>();
empList.foreach(e->{
Customer customer = new Customer();
customer.setCustomerName(e.getEmploueeName());//etc
customers.add(cutomer);
})
// what i am looking for
List<Customer> customers=Utils.getObject(empList,Customer.class);

这里是java POJO

class Employee {

private String employeeName;

private int age;

private EmployeeDetails details;
}

class EmployeeDetails {
private String name;

private int salary;
}


class Customer{

private String customerName;

private int age;

private CustomerDetails details;
}

class CustomerDetails {
private String name;

private int salary;
}

我不想使用任何第 3 部分库,如 Apache Commons,而不是从员工到客户填充列表,反之亦然。

最佳答案

您可以使用 BeanUtils :

import org.apache.commons.beanutils.BeanUtils;

Employee newObject = new Employee();
BeanUtils.copyProperties(newObject, oldObject);

如果寻找深层复制,则使用 SerializationUtils.clone来自 Apache Commons Lang 的方法.它复制整个类层次结构。

SerializationUtils.clone(object);

关于java - java中如何将属性从一个对象复制到另一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68245716/

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