Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Java: list, set

Чем List отличается от Set?

Вопрос проверяет знание коллекций Java и умение выбирать правильную структуру данных под задачу.

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

List и Set — это разные типы коллекций с разными правилами хранения данных. List допускает дубликаты и сохраняет порядок элементов. Set не допускает дубликатов и не гарантирует порядок. Выбор зависит от требований к данным.

Длинный ответ

Коллекции в Java предназначены для хранения групп объектов, но разные интерфейсы решают разные задачи.

Особенности List

Определение:
List — это упорядоченная коллекция, которая допускает дубликаты.

Характеристики:

  • сохраняет порядок добавления

  • позволяет доступ по индексу

  • допускает одинаковые элементы

List<String> names = new ArrayList<>();
names.add("Alice");
names.add("Alice");

Особенности Set

Определение:
Set — это коллекция, которая не допускает дубликатов.

Характеристики:

  • каждый элемент уникален

  • порядок не гарантируется (зависит от реализации)

  • проверка уникальности основана на equals и hashCode

Set<String> names = new HashSet<>();
names.add("Alice");
names.add("Alice"); // добавится только один элемент

Когда что использовать

Выбор зависит от задачи:

  • List — если важен порядок или дубликаты

  • Set — если важна уникальность элементов

Краткий вывод

List подходит для упорядоченных данных, Set — для уникальных. Правильный выбор коллекции напрямую влияет на корректность и производительность кода.

Уровень

  • Рейтинг:

    5

  • Сложность:

    4

Навыки

  • Java

    Java

Ключевые слова

#list

#set

Подпишись на Java Developer в телеграм