Чем Collections.unmodifiableList отличается от List.copyOf и когда что выбрать?

JavaJuniorCollections и GenericsСравнениеjava|collections и generics|collections.unmodifiablelist

Что хотят услышать интервьюеры:

Сравнение: Collections.unmodifiableList стоит сравнивать с List.copyOf по критериям читаемости, безопасности, производительности, тестируемости и поддержки командой.

Ответ:

Когда выбирать Collections.unmodifiableList: когда его свойства прямо соответствуют задаче: unmodifiable view и immutable copy ведут себя по-разному при изменении исходной коллекции.

Слабый ответ: “так принято в Spring/Java”. На собеседовании лучше объяснить ограничения и цену выбора.

List<String> safe = List.copyOf(names);

Источники

Похожие вопросы