它可能是一个非常简单的但它仍然让我感到困惑!
import java.util.ArrayList;
public class Sample {
ArrayList<Integer> i = new ArrayList<>();
ArrayList<Integer> j = new ArrayList<>();
/**
* @param args
*/
public static void main(String[] args) {
new Sample().go();
}
private void go() {
i.add(1);
i.add(2);
i.add(3);
j=i;
i.remove(0);
System.out.println(i + "asd" + j);
}
}
Run Code Online (Sandbox Code Playgroud)
我试着打印它:
[2, 3]asd[2, 3]
Run Code Online (Sandbox Code Playgroud)
当我改变时,为什么j会改变?虽然不是原始的!
java ×1