如果我在Java中这样做:

for(String s : myCollection.expensiveListGeneration())
{
      doSomething();
}

在开始或每个循环迭代中是否仅调用一次一次昂贵的ListGeneration()?

是否依赖于实现?

最佳答案

因为它等效于使用迭代器,所以等效于调用collections。 iterator()方法,它被调用一次。

07-24 09:39