使用 Stream() 从 List<X> 创建 List<Y>
Create a List<Y> from a List<X> using Stream()
我正在尝试从 List<X>
创建 List<Y>
。
这是我的两个 类 :
public class X {
private String a;
private String b;
private String c;
private String d;
//Getters, setters
}
public class Y {
private String a;
private String b;
//Getters, setters
}
对于 forEach,它会是这样的:
List<X> listX = getListX();
List<Y> listY = new ArrayList<>();
listX.forEach( x -> {
Y object_y = new Y();
object_y.set_a(x.get_a());
object_y.set_b(x.get_b());
listY.add(object_y);
});
是否有任何其他方法可以使用 Stream() 执行相同的操作?
有一个 map
函数:
List<X> listX = getListX();
List<Y> listY = listX.stream().map( x -> {
Y object_y = new Y();
object_y.set_a(x.get_a());
object_y.set_b(x.get_b());
return object_y;
}).collect(Collectors.toList());
我正在尝试从 List<X>
创建 List<Y>
。
这是我的两个 类 :
public class X {
private String a;
private String b;
private String c;
private String d;
//Getters, setters
}
public class Y {
private String a;
private String b;
//Getters, setters
}
对于 forEach,它会是这样的:
List<X> listX = getListX();
List<Y> listY = new ArrayList<>();
listX.forEach( x -> {
Y object_y = new Y();
object_y.set_a(x.get_a());
object_y.set_b(x.get_b());
listY.add(object_y);
});
是否有任何其他方法可以使用 Stream() 执行相同的操作?
有一个 map
函数:
List<X> listX = getListX();
List<Y> listY = listX.stream().map( x -> {
Y object_y = new Y();
object_y.set_a(x.get_a());
object_y.set_b(x.get_b());
return object_y;
}).collect(Collectors.toList());