原始数组的现代 for 循环
基元数组上的 for 循环之间是否存在任何性能差异?
假设:
double[] doubleArray = new double[300000];
for (double var: doubleArray)
someComplexCalculation(var);
或:
for ( int i = 0, y = doubleArray.length; i < y; i++)
someComplexCalculation(doubleArray[i]);
测试结果
我实际上分析了它:
Total timeused for modern loop= 13269ms
Total timeused for old loop = 15370ms
因此,现代循环实际上运行得更快,至少在我的Mac OSX JVM 1.5上是这样。