Встречается на собеседованиях • сегодня
В чем разница между List и Set
`List` и `Set` — это коллекции в Java, но с разной семантикой и поведением:
- **List**:
- Хранит элементы в порядке добавления (индексированный доступ).
- Допускает дубликаты.
- Пример: `ArrayList`, `LinkedList`.
```java
List list = new ArrayList<>();
list.add("A"); // ["A"]
list.add("B"); // ["A", "B"]
list.add("A"); // ["A", "B", "A"] — дубликат разрешен
```
- **Set**:
- Гарантирует уникальность элементов (дубликаты запрещены).
- Не гарантирует порядок (кроме `LinkedHashSet` или `TreeSet`).
- Пример: `HashSet`, `TreeSet`.
```java
Set set = new HashSet<>();
set.add("A"); // ["A"]
set.add("B"); // ["A", "B"] (порядок не гарантирован)
set.add("A"); // ["A", "B"] — дубликат игнорируется
```
Выбор зависит от задачи: нужны ли дубликаты и важен ли порядок.

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