作为测试一些代码的副作用,我编写了一个小函数来比较使用array.push方法与直接寻址(array [n] = value)的速度.令我惊讶的是,推送方法通常表现得更快,特别是在Firefox中,有时在Chrome中.只是出于好奇:任何人都有解释吗?您可以在此页面找到测试(单击"数组方法比较")
示例代码:
int a[] = new int[]{0, 1, 2, 3};
int result = 0;
for (int i : a)
result += i;
Run Code Online (Sandbox Code Playgroud)
是循环保证遍历跨越a[0],a[1],a[2],a[3]的顺序?我坚信答案是肯定的,但这个页面似乎并没有明确说明秩序.
有一个坚实的参考?