39
 for ( SomeListElement element : objectWithList.getList() ) { ... }

上記のスニペットは何に翻訳されていますか?

私が最も興味を持っているのは、getList()メソッドが一度呼び出されたのか、それとも反復/要素ごとに呼び出されたのか?

4

2 に答える 2

47

と同等

for(Iterator<SomeListElement> i = objectWithList.getList().iterator(); 
                                                              i.hasNext(); ) {
  SomeListElement element = i.next();
  //access element here
}
于 2013-04-29T09:07:29.010 に答える
26

以下のコード スニペットに変換され、objectWithList.getList()一度だけ呼び出されます。

for (Iterator i = objectWithList.getList().iterator(); i.hasNext();) {
    SomeListElement e = (SomeListElement) i.next();
}
于 2013-04-29T09:07:15.937 に答える