我有一个Java中的POJO列表,我需要将其转换为另一种类型的POJO列表。这两个POJO都有两个字符串字段。有没有更好的方法来做到这一点,而不仅仅是迭代原始列表并将新项添加到结果列表中?我知道在Java 8中我可以编写一个函数来实现apply方法,但我使用的是Java 7。在Java 7中有没有更有效的方法来实现这一点?下面的示例代码
final List<Tracking> list = new ArrayList<>();
for (DJTracking djTracking : trackingInformation) {
list.add(new Tracking(djTracking.getTrackingNumber(), djTracking.getTrackingUrl()));
}
return list;
发布于 2016-05-06 20:49:06
一种简单的方法是打破你提到的代码,我的意思是用firstClass编写一个方法来将它转换为第二个方法,这可能不会提高性能,但更干净。
public Tracking convertToTracking(){
return new Tracking(this.getTrackingNumber(), this.getTrackingUrl());
}
在你想要的任何地方,你都可以简单地转换列表:
final List<Tracking> list = new ArrayList<>();
for (DJTracking djTracking : trackingInformation) {
list.add(djTracking.convertToTracking());
}
return list;
https://stackoverflow.com/questions/37081035
复制相似问题