Это, пожалуй, случайный и нерешительный вопрос, но в последнее время я много работаю над обработкой массивов в Java, и мне было интересно, следует ли при использовании следующего цикла:Доступ к индексу при итерации по массиву java для цикла
for (Object obj : SomeArrayOrCollection) {
//do something
}
, есть ли способ получить доступ к какому-то порядковый не делать то, что я обычно делаю (объявление дополнительные переменным и добавление одного к нему каждый раз, когда проходит цикл), или что один из моих коллег делает (используя
List.indexOf(int i)
способ)? Я чувствую, что оба они добавляют довольно много накладных расходов. Я знаю, что я мог бы просто использовать стандартный
for (declaration;condition;change) { }
цикл, но это значительно удобнее в контексте данного проекта, чтобы использовать модифицированный цикл. Итак, вопрос в том, есть ли способ получить доступ к индексу объекта, с которым вы работаете, не прибегая к более интенсивной работе с памятью, как у меня выше?
Спасибо!
Здесь я не вижу никакой операции с интенсивной памятью – stinepike
Да; это накладные расходы. Но «foreach» Java - это просто сахара поверх обычной конструкции 'for', поэтому вы боретесь с мнимой проблемой. Использовать для'. – tkroman
Что такое интенсивная память? – zerocool