Security trainee
Как сделать иммутабельный список?
Ответ
List.of(...) — с Java 9, неизменяемый. Collections.unmodifiableList(list) — обёртка, но если изменить оригинальный list — обёртка тоже увидит изменения. List.copyOf(list) — полноценная иммутабельная копия.
Разбор: List.of (Java 9+) и List.copyOf дают настоящие неизменяемые списки, а unmodifiableList — лишь обёртку, сквозь которую видны изменения оригинала. Ловушки: Arrays.asList запрещает изменение размера, но set() разрешён, так что список не иммутабельный; unmodifiableList ничего не копирует; а List.of реально immutable без всяких «режимов» — add() всегда бросает UnsupportedOperationException.
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.