object集合转成对象集合
时间: 2024-05-11 07:18:52 浏览: 90
假设我们有一个包含多个对象的 `List` 集合,其中每个对象都有相同的结构和属性。我们可以通过使用 Java 8 的流式 API 和 `map()` 方法来将它们转换为另一个对象集合。
例如,假设我们有以下两个类:
```java
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// getters and setters
}
public class PersonDto {
private String name;
private int age;
public PersonDto(String name, int age) {
this.name = name;
this.age = age;
}
// getters and setters
}
```
现在我们有一个 `List<Person>` 的集合,我们要将其转换为 `List<PersonDto>`:
```java
List<Person> people = Arrays.asList(
new Person("Alice", 25),
new Person("Bob", 30),
new Person("Charlie", 35)
);
List<PersonDto> dtos = people.stream()
.map(person -> new PersonDto(person.getName(), person.getAge()))
.collect(Collectors.toList());
```
在上面的代码中,我们首先将 `List<Person>` 集合转换为一个流,然后使用 `map()` 方法将每个 `Person` 对象转换为 `PersonDto` 对象,并最终使用 `collect()` 方法将它们收集到一个新的 `List<PersonDto>` 集合中。
阅读全文