8.构造一个 List<Student> , Student 有 name 和 age 两个属性。将 List<Student> 转换成 List<User>。 User里有 userName 和 userAge两个属性。
时间: 2024-05-04 19:22:26 浏览: 20
可以使用 Java 8 的 Stream API 中的 map 方法来实现这个转换操作。
首先定义 Student 类和 User 类:
```java
public class Student {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
public class User {
private String userName;
private int userAge;
public User(String userName, int userAge) {
this.userName = userName;
this.userAge = userAge;
}
public String getUserName() {
return userName;
}
public int getUserAge() {
return userAge;
}
}
```
然后创建一个 List<Student> 对象,并将其转换为 List<User> 对象:
```java
List<Student> students = Arrays.asList(
new Student("Tom", 20),
new Student("Jerry", 18),
new Student("Alice", 22)
);
List<User> users = students.stream()
.map(s -> new User(s.getName(), s.getAge()))
.collect(Collectors.toList());
```
上面的代码使用了 Stream API 中的 map 方法,将每个 Student 对象映射为一个新的 User 对象,并最终使用 collect 方法将所有 User 对象收集到一个 List 中。