Пользователь Нина Можарская
Нина Можарская
17 уровень
Киев

for each vs for: сценарии использования

Статья из группы Random
Элементы массива не обязательно перебирать только циклом for. Имеется более компактная конструкция for each, пример которой приведен ниже.

int[] elements = { 1, 2, 3, 4, 5 }; 
for (int k : elements) {
	System.out.println(k);
}
В круглых скобках мы указываем, что перебираем элементы массива elements, а переменная k является очередным элементом этого массива на очередной итерации. Естественно типы переменной и массива должны совпадать. В теле цикла мы указываем операторы обработки. В данном примере мы просто выводим все элементы массива на консоль.
Комментарии (30)
Чтобы просмотреть все комментарии или оставить свой,
перейдите в полную версию
Kupnu4 26 уровень, Киев
17 октября 2018
Коротко, ясно и доступно, даже тому кто первый раз видит такую конструкцию.
Vania Kostiuk 6 уровень, Киев
15 октября 2018
Коротке і гарне пояснення роботи оператора . *like
Catherine Mozharskaya 0 уровень
14 октября 2018
О, спасибо! Теперь только for each. Быстрее и понятнее!
Mihail Tymoshenko 0 уровень
14 октября 2018
Отличное объяснение оборота for each. Кратко, понятно и по делу.
Алексей 0 уровень, Киев
13 октября 2018
for each, конечно, компактнее в плане написания кода, но всё же, как то более привычно использовать обычный for
Мария 2 уровень
13 октября 2018
Только ознакомилась с for each и могу сказать одно - вещь очень интересная и быстрая! У фора, без сомнений, есть свои плюсы, но for each намного удобней использовать, особенно когда ограничен во времени и на счету каждая секунда
Viktoriia_N 0 уровень, Киев
10 октября 2018
Вот единственное, что не совсем удобно в javarush- это то, что нет моб.версии (лично как по мне), а так вот просто замечательно не только изучать, а и обмениваться новой ценной и важной информацией.
Viktoriia_N 0 уровень, Киев
10 октября 2018
быстродействие, оно то так), но мы ведь еще боремся и за сокращение обьема кода и простоту в понимании, а с вызовом метода forEach(), который принимает лямбда-выражение значительно упрощается и сокращается код.
Сергій Богуш 0 уровень
9 октября 2018
Единственная проблема For each, случае наличия нескольких вложених циклов, - они снижают бистродействие (за счет создания множества обьектов класса итератор и последующей работи сборщика мусора).
Anonymous #1384518 35 уровень Expert
7 октября 2018

Stream.of(elements).forEach(x -> System.out.println(x));
Для развития. Гуглите если что.