可以用copyToList方法进行说明吗
时间: 2024-03-19 12:45:08 浏览: 112
hutool框架代码
当我们需要将一个 JavaBean 列表转换为另一个 JavaBean 列表时,可以使用 `BeanUtils.copyProperties` 方法,但是该方法只能处理单个 JavaBean,无法处理 JavaBean 列表。此时,我们可以使用 `BeanUtil.copyToList` 方法来实现 JavaBean 列表的转换。
`BeanUtil.copyToList` 方法的使用方式如下所示:
```java
List<Destination> destList = BeanUtil.copyToList(sourceList, Destination.class);
```
其中,`sourceList` 是源 JavaBean 列表,`Destination.class` 是目标 JavaBean 类型。该方法会遍历源 JavaBean 列表中的每个元素,并使用 `BeanUtils.copyProperties` 方法将其转换为目标 JavaBean 类型。最终,该方法会返回一个目标 JavaBean 类型的列表。
下面是一个示例代码:
```java
public class Person {
private String name;
private int age;
// getter 和 setter 方法省略
}
public class PersonDTO {
private String name;
private int age;
// getter 和 setter 方法省略
}
// 在测试类中进行如下操作
List<Person> personList = new ArrayList<>();
personList.add(new Person("张三", 20));
personList.add(new Person("李四", 25));
personList.add(new Person("王五", 30));
List<PersonDTO> dtoList = BeanUtil.copyToList(personList, PersonDTO.class);
for (PersonDTO dto : dtoList) {
System.out.println(dto.getName() + " " + dto.getAge());
}
```
在上述代码中,我们将 `Person` 类型的列表转换为了 `PersonDTO` 类型的列表,并输出了结果。注意,转换后的 `PersonDTO` 类型对象中的属性值和 `Person` 类型对象中的属性值是一一对应的。
阅读全文