Junior — Middle
Агар ман методи toList() -ро дар Stream занам, натиҷа ArrayList хоҳад буд ё дигар навъи коллексия?
sobes.tech AI
Ҷавоб аз AI
Метод toList() дар интерфейси Stream (аз Java 16) връща неизменяема листа, но конкретният тип колекция не е гарантиран и не е задължително да е ArrayList. За разлика от collect(Collectors.toList()), което обикновено връща ArrayList, Stream.toList() може да връща друг тип лист, оптимизиран за конкретната имплементация.
Пример:
List<String> list = Stream.of("a", "b", "c").toList();
// листата е неизменяема, опитът да се промени ще доведе до UnsupportedOperationException
Затова не трябва да се разчита, че резултатът ще бъде точно ArrayList. Ако е необходимо точно ArrayList, по-добре е да се използва collect(Collectors.toList()).