Junior — Middle
120
Оё метавонед фарқият байни интерфейсҳои Iterator ва Iterable ва чӣ гуна онҳо бо ҳам муошират мекунанд, шарҳ диҳед?
Ширкатҳо дар куҷо пурсиданд
ТОП КЕЙС
Ҷавоб аз AI
sobes.tech AI
В Java интерфейс Iterable представляет коллекцию, элементы которой можно перебрать. Он содержит один метод iterator(), который возвращает объект типа Iterator.
Интерфейс Iterator предоставляет методы для последовательного обхода элементов коллекции:
hasNext()— проверяет, есть ли следующий элемент.next()— возвращает следующий элемент.remove()— удаляет текущий элемент (опционально).
Взаимодействие:
- Класс, реализующий Iterable, предоставляет метод
iterator(), который возвращает объект Iterator. - Этот Iterator используется для обхода элементов коллекции.
Пример:
List<String> list = Arrays.asList("a", "b", "c");
for (String s : list) { // for-each использует Iterable
System.out.println(s);
}
// Аналогично с Iterator
Iterator<String> it = list.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
Таким образом, Iterable — это коллекция, которую можно перебрать, а Iterator — инструмент для перебора этой коллекции.