Встречается на собеседованиях • сегодня
В чем разница между Iterator, Comparator и Iterable
`Iterator` — это интерфейс для обхода элементов коллекции. Он предоставляет методы `hasNext()`, `next()` и `remove()`.
Пример:
```java
Iterator it = list.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
```
`Comparator` — интерфейс для сравнения объектов. Используется для сортировки (метод `compare(T o1, T o2)`).
Пример:
```java
Comparator comparator = (s1, s2) -> s1.length() - s2.length();
list.sort(comparator);
```
`Iterable` — интерфейс, который позволяет объекту быть итерируемым (возвращает `Iterator`). Коллекции реализуют его.
Пример:
```java
for (String s : list) { // list реализует Iterable
System.out.println(s);
}
```
**Ключевое отличие:**
- `Iterable` — делает объект итерируемым.
- `Iterator` — сам обход элементов.
- `Comparator` — сравнение, а не обход.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы