В каком паттерне проектирования применяется класс Comparator для сравнения объектов?

Класс Comparator в Java применяется в паттерне проектирования Стратегия (Strategy).

Короткий ответ

Что ответить на собеседовании

Класс Comparator в Java применяется в паттерне проектирования Стратегия (Strategy).

Подробный разбор

Ответ с пояснениями

Класс Comparator в Java применяется в паттерне проектирования Стратегия (Strategy).

Comparator реализует интерфейс, который задаёт стратегию сравнения объектов. Это позволяет менять способ сравнения без изменения самих классов объектов.

Например, если у вас есть список объектов, и вы хотите сортировать их по разным критериям, вы можете создать разные реализации Comparator и передавать их в методы сортировки:

List<Person> people = ...;

// Сортировка по имени
Comparator<Person> byName = (p1, p2) -> p1.getName().compareTo(p2.getName());

// Сортировка по возрасту
Comparator<Person> byAge = Comparator.comparingInt(Person::getAge);

Collections.sort(people, byName);
Collections.sort(people, byAge);

Таким образом, Comparator позволяет гибко менять алгоритм сравнения, что соответствует паттерну Стратегия.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее