ArrayList<Integer> a=new ArrayList<Integer>();
a.add(5);
ArrayList<Integer> b=(ArrayList<Integer>)a.clone();
a.add(6);
System.out.println(b.toString());
В приведенном выше фрагменте кода я думаю, что clone()
делает мелкую копию. Таким образом, b
и a
должны указывать на одно и то же место памяти. Однако, когда я делаю b.toString()
, ответ будет только 5
. Почему 6
также не отображается, если clone()
делает мелкую копию?