Вызывается ли «условие» цикла for каждый раз для Iterables?

Допустим, у меня есть следующий код:

for (Object obj : Node.getIterable()) {
    //Do something to object here
}

и Node.getIterable () возвращает итерацию. Вызывается ли функция getIterable () каждый раз или только при запуске цикла for? Следует ли мне изменить его на:

Iterable<Object> iterable = new Iterable<Object>();
//populate iterable with objects
for (Object obj : iterable) {
    //Do something
}
5
задан gsingh2011 7 October 2011 в 19:45
поделиться