Встречается на собеседованиях • сегодня
В чем разница между toList и collect(Collectors.toList()) в Stream API
Оба метода собирают элементы стрима в список, но есть ключевые различия:
1. **toList()** (Java 16+):
- Возвращает неизменяемый список (`List.of()` под капотом)
- Не гарантирует конкретную реализацию List
- Более лаконичный синтаксис
2. **collect(Collectors.toList())**:
- Возвращает изменяемый ArrayList
- Гарантирует конкретную реализацию
- Работает во всех версиях Java 8+
Пример:
```java
List immutable = stream.toList(); // Нельзя изменить
List mutable = stream.collect(Collectors.toList()); // Можно изменять
```
Выбор зависит от потребности в изменяемости списка и версии Java. В новых проектах предпочтительнее `toList()` для иммутабельности.

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