把数组赋值给一个字段(field),其实是把这个数组在内存中的引用地址赋给该字段,即内存中只有一个数组,但同时有两个变量(数组变量和字段变量)指向了它。给一个字段赋值,也是把该值的在内存中的引用地址赋给该字段。
当数组中的元素值变化时,并没有在内存中新建一个数组,没有发生引用地址的变更;而修改字段的值时,是在内存中新开辟了内存空间创建了一个对象(String或int或其他类型的对象),然后更改了字段在内存中指向的引用地址。
Sign in to make a reply
云外方天
把数组赋值给一个字段(field),其实是把这个数组在内存中的引用地址赋给该字段,即内存中只有一个数组,但同时有两个变量(数组变量和字段变量)指向了它。给一个字段赋值,也是把该值的在内存中的引用地址赋给该字段。
当数组中的元素值变化时,并没有在内存中新建一个数组,没有发生引用地址的变更;而修改字段的值时,是在内存中新开辟了内存空间创建了一个对象(String或int或其他类型的对象),然后更改了字段在内存中指向的引用地址。