@KaizerSX

Почему результат такой?

Почему мы меняя значение объекта List меняется значение массива names?
String [] names = {"Tom", "Dick", "Harry"};
         List<String> list = Arrays.asList(names);
         list.set(0, "Sue");
         System.out.println(names[0]);


результат: Sue
  • Вопрос задан
  • 158 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
Потому, что Arrays.asList() возвращает экземпляр ArrayList, использующий переданный массив. То есть вы те же самые данные просто обернули дополнительной абстракцией.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
Ну потому, что вы изменяете не массив, а НОВЫЙ список, полученный из массива, а массив сам не трогаете.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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