Collections.unmodifiableList и защитная копия
Если я напишу
List a1 = Arrays.asList(1, 2, 3);
List a2 = Collections.unmodifiableList(a1);
a2
только для чтения, но если я напишу
a1.set(0,10);
затемa2
также модифицируется.
Если в API сказано:
Возвращает неизменяемое представление указанной коллекции. Этот метод позволяет модулям предоставлять пользователямтолько для чтения» доступ к внутренним коллекциям.
тогда, почему, если я изменяю исходную коллекцию, также изменяется целевая скопированная коллекция?
Может быть, я неправильно понял значение, и если да, то что?способ написать защитную копию этой коллекции?