Проверяет понимание синтаксиса и принципов работы цикла for-each в Java, используемого для итерации по коллекциям и массивам.
Цикл for-each, также известный как улучшенный цикл for, был введен в Java 5 для упрощения итерации по массивам и коллекциям. Он предоставляет более чистый и читаемый синтаксис по сравнению с традиционным циклом for, скрывая детали управления индексами или итераторами.
Синтаксис цикла for-each выглядит следующим образом:
for (Тип переменная : коллекция_или_массив) {
// тело цикла
}Пример с массивом:
int[] numbers = {1, 2, 3, 4, 5};
for (int num : numbers) {
System.out.println(num);
}Пример с коллекцией:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
for (String name : names) {
System.out.println(name);
}Для массивов компилятор Java преобразует for-each в обычный цикл for с индексом. Для коллекций, реализующих интерфейс Iterable, for-each использует итератор, вызывая методы hasNext() и next() неявно. Это означает, что коллекция не должна изменяться во время итерации, иначе возникнет ConcurrentModificationException.
Цикл for-each идеален для простого перебора элементов, когда не требуется модификация коллекции или доступ к индексу. Он повышает читаемость кода и уменьшает вероятность ошибок, поэтому его следует использовать по умолчанию для итерации по массивам и коллекциям в Java.