基本数据类型
浅拷贝是将该属性复制一份给新的对象,对其一修改不会影响另一方,String 类型是常量,所以也不会被影响
引用类型的成员变量
浅拷贝会是引用传递,只是将该成员变量的引用指(内存地址)复制一份给新的对象,公用一个地址,修改其一会影响另一个。
遍历循环复制,使用List 实现类的构造方法,listAll等都是浅拷贝。
举例
如果大家看懂了,这个例子,也就理解了浅拷贝。
public static void main (String[] args) {
List<String> old = new ArrayList<>();
old.add("first");
old.add("second");
old.add("third");
addString(old,"four");
old.forEach(System.out::println);
}
private void addString(List<String> a, String b){
a.add(b);
}
结果输出 first, second, third, four