假设Java中有10个或更少的Object [],那么复制数组的最快方法是什么?
for(int i = 0;i < a.length;i++)
Run Code Online (Sandbox Code Playgroud)for(int i = 0,l = a.length;i < l;i++) // i.e. is caching array len in local var faster?
Run Code Online (Sandbox Code Playgroud)System.arrayCopy(a, 0, a2, 0, a.length);
Run Code Online (Sandbox Code Playgroud)可能性是三种替代方案之间的差异相对较小.
这可能与您的应用程序的整体性能无关.
相对差异可能取决于您使用的硬件平台和Java的实现.
相对差异也将根据数组的声明和实际类型而变化.
你最好忘记这一点,然后编写一个对你来说最自然的方式.如果您发现已完成的应用程序运行速度太慢,请根据分析结果对其进行分析和调整.在这一点上,尝试三种替代方案可能是值得的,看看哪种方法对于您的应用程序的特定用例更快.(另一种方法可能是首先避免阵列复制是否明智.)
| 归档时间: |
|
| 查看次数: |
271 次 |
| 最近记录: |