Это эквивалентно:
final int len = number.length;
for(int j = 0; j < len; j++) {
int i = number[j];
}
Обратите внимание, что forEach не будет оценивать длину в каждом цикле. Это может быть также устранено JVM, но особенно в случае коллекций, где некоторые будут использовать
for(int j = 0; j < collection.size(); j++) {
, он делает (небольшую) разницу более быстрой
int len = collection.size()
for(int j = 0; j < len; j++) {