Найти тему
DEBAGanov

Java 898. Какие существуют способы перебирать элементы списка (List)?

В Java существует несколько способов перебирать элементы списка (например, ArrayList, LinkedList и т.д.). Рассмотрим некоторые из них:

  • Цикл for-each:
List<String> list = new ArrayList<>();
// добавление элементов в список
for (String item : list) {
// обработка каждого элемента
System.out.println(item);
}

  • Использование итератора:
List<String> list = new ArrayList<>();
// добавление элементов в список
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
String item = iterator.next();
// обработка каждого элемента
System.out.println(item);
}

  • Цикл for со счетчиком:
List<String> list = new ArrayList<>();
// добавление элементов в список
for (int i = 0; i < list.size(); i++) {
String item = list.get(i);
// обработка каждого элемента
System.out.println(item);
}

  • Лямбда-выражение forEach() (доступно начиная с Java 8):
List<String> list = new ArrayList<>();
// добавление элементов в список
list.forEach(item -> {
// обработка каждого элемента
System.out.println(item);
});

  • Stream API (доступно начиная с Java 8):
List<String> list = new ArrayList<>();
// добавление элементов в список
list.stream().forEach(item -> {
// обработка каждого элемента
System.out.println(item);
});

Какой способ выбрать зависит от задачи и личных предпочтений. Однако, если необходимо изменять список в процессе перебора его элементов, то лучше использовать итератор, так как он позволяет безопасно добавлять и удалять элементы из списка.

1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions

Tелеграмм канал: https://t.me/DEBAGanov

Мое резюме: https://github.com/DEBAGanov