Java十大简单性能优化( 九 )

…或者 , 如果您的列表没有真正改变 , 您甚至可以对它的数组版本进行操作:

1个

2

3

for(String value : stringArray) {

// Do something useful here

带走

从可写性和可读性以及从API设计的角度来看 , 迭代器 , Iterable和foreach循环都非常有用 。 但是 , 它们为每次迭代在堆上创建一个小的新实例 。 如果您多次运行此迭代 , 则要确保避免创建此无用的实例 , 而应编写基于索引的迭代 。

讨论区

关于上述部分的一些有趣的分歧(特别是用Iterator索引访问代替用法)已经在Reddit上进行了讨论 。

推荐阅读