繁体   English   中英

从一个POJO的列表转换为另一个

[英]Converting from list of one POJO to another

我有一个Java中的POJO列表,我需要将其转换为其他类型的POJO列表。 两个POJO都有两个String字段。 除了遍历原始列表并将新项目添加到结果列表之外,还有更好的方法吗? 我知道在Java 8中我可以编写一个实现apply方法的函数,但是我正在使用Java7。在Java 7中,有没有更有效的方法? 下面的示例代码

final List<Tracking> list = new ArrayList<>();

for (DJTracking djTracking : trackingInformation) {
    list.add(new Tracking(djTracking.getTrackingNumber(), djTracking.getTrackingUrl()));
}

return list;

一种简单的方法是破坏您提到的代码,我的意思是在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;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM