【深入Java基础】for和foreach的区别

for

适合随机访问,例如底层是数组实现的情况。(ArrayList和Vector等)

foreach

适合顺序访问,例如底层是链表实现的情况。(LinkedList等)

foreach无法获取迭代的索引。

使用foreach遍历集合时,集合必须实现了Iterator接口。