Ответ
java.util.Collections — это утилитный класс (utility class), а не интерфейс.
Характеристики класса Collections:
- Содержит исключительно статические методы для операций с коллекциями (
List,Set,Map). - Имеет приватный конструктор, поэтому создать его экземпляр невозможно.
- Предоставляет алгоритмы и фабричные методы.
Основные категории методов:
- Алгоритмы:
List<Integer> numbers = Arrays.asList(3, 1, 4); Collections.sort(numbers); // Сортировка: [1, 3, 4] Collections.reverse(numbers); // Реверс: [4, 3, 1] int index = Collections.binarySearch(numbers, 3); // Бинарный поиск - Синхронизирующие обёртки (legacy, для потокобезопасности):
List<String> syncList = Collections.synchronizedList(new ArrayList<>()); Set<String> syncSet = Collections.synchronizedSet(new HashSet<>()); - Неизменяемые (immutable) коллекции (с Java 9 чаще используют
List.of(),Set.of()):List<String> unmodifiableList = Collections.unmodifiableList(someList); - Вспомогательные методы:
shuffle(),frequency(),disjoint()и др.
Не путать с Collection (интерфейс) и Collections (утилитный класс).