for 循环条件:数组大小 - .length 还是常量?

Moo*_*ing 4 java arrays for-loop

比如说,我使用了一个常量来为数组分配空间。

稍后,当我使用 for 循环访问数组中的每个位置时,我应该使用数组的 .length 值还是声明期间使用的常量值来寻址测试部分?

换句话说,

for (int i = 0; i < array.length; i++)
Run Code Online (Sandbox Code Playgroud)

或者

for (int i = 0; i < constantArraySize; i++)
Run Code Online (Sandbox Code Playgroud)

哪一个更好?

gex*_*ide 5

考虑到性能,没有一个比另一个更好。两者都应该在缓存中。

考虑到可读性,您应该使用array.length来明确您想要迭代数组。所以我会选择第一种选择。