我需要优化一些Java代码,它们将一种类型的~100个POJO“转换”为另一种类型的POJO。
例如,假设有POJO A1
和A2
。还有一个函数A2 convert(A1 a)
,创建一个新的A2
实例和复制数据,从给定的a
到它。假设我还有一个函数Collection<A2> convert(Iterator<A1> as)
,它可以处理~100个对象的集合。
如何让convert
更快地运行。我可以在convert
中优化新实例创建吗?
答案 0 :(得分:2)
您可能希望将其并行化以有效地使用CPU。
另一种方法是让convert
更快。这两种技术的结合将为您提供更快的代码。
另一方面,您可以尝试在A1
和A2
之间使用某种继承,然后将其转换(这是猜测工作,我不知道您的代码是如何完全的)
答案 1 :(得分:2)
当您并行执行多次转换时,可以获得显着改进。 Java具有很好的功能。看一下Thread类来开始。