【发布时间】:2019-10-28 16:42:00
【问题描述】:
我是java的初学者,所以我发现有些事情让我感到困惑: 为什么当我们创建如下内容时:
String name = "Abdelillah";
String editName = name;
editName = "Mohammed";
我的问题是为什么 editName 不会更改名称对象? 但是当我们使用数组时,如果我们创建对第一个数组的引用,第二个会影响第一个 我需要知道为什么,谢谢
【问题讨论】:
-
因为变量
editName和name之间没有任何联系,即使它们碰巧包含相同的值(在这种情况下,是对对象的引用)。editName = name只是将name中的值(对象引用,而不是对象本身)复制到editName中。这不改变的原因完全相同a:int a = 42; int b = a; b = 67; System.out.println(a); // 42
标签: java arrays object reference copy