Хочется использоваться for-each цикл в java, но иногда сталкиваюсь с необходимостью узнать индекс текущей итерации (например, часто нужно сделать какое-то дополнительное действие со всеми элементами, кроме последнего).
Добавлять дополнительный счетчик индекса как-то некрасиво получается - уж лучше использовать обычный цикл:
int i = 0; for (Object val : array) { /// ... if(i < array.length - 1) {...} i++; }
Может есть какой-нибудь способ узнать текущий индекс без такого уродства - средствами языка? Что-то типа 'for.currentIndex' или типа того.
Подозреваю, что нельзя, но JSP вселяет надежду - в JSTL есть такое понятие, как loopStatus, который может дать текущий индекс и еще некоторые потенциально полезные вещи: http://www.java2s.com/Code/Java/JSTL/JSTLforeachandstatus.htm