【发布时间】:2014-04-08 00:42:03
【问题描述】:
我把一个数组作为对象的一部分,并有一个数组列表。一旦我使对象成为我用作对象的构造器的变量,一旦它们发生更改,就不应该更改对象吗?我更不明白的是我从我的对象中获取数组,这是正确的,但是我修改了一个不同的数组,它修改了我从我的对象中返回的那个。
String [] tempnums1 = Contacts.get(0).getNumbers();
Log.d("array", "tempnums is " + tempnums1[0]);
numbers[0] = "ive changes";
Log.d("array", "tempnums again is " + tempnums1[0]);
String [] tempnums2 = Contacts.get(0).getNumbers();
Log.d("array", "tempnums2 is " + tempnums2[0]);
第一次打印是正确的,但随后我修改了 numbers[0],当我打印 tempnums[0] 时,它已更改为“tempnums 再次已更改”,这对我来说毫无意义
【问题讨论】: