Встречается на собеседованиях • сегодня
Какой паттерн проектирования использует Comparator
Comparator использует паттерн **Strategy**, который позволяет инкапсулировать алгоритм сравнения в отдельный класс. Это делает поведение сравнения независимым от класса объектов и позволяет динамически менять логику сравнения.
Пример:
```java
List names = Arrays.asList("Alice", "Bob", "Charlie");
// Стратегия сортировки по длине
Comparator byLength = (a, b) -> a.length() - b.length();
names.sort(byLength);
// Другая стратегия - алфавитная сортировка
Comparator alphabetically = String::compareTo;
names.sort(alphabetically);
```
Ключевые преимущества:
- Разделение логики сравнения и данных
- Возможность легко добавлять новые стратегии сравнения
- Гибкость в выборе алгоритма во время выполнения

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