public class Test {
public static void main(String[] args) {
int[] a = {1, 2, 3, 4, 5};
int[] b = a;
int[] c = {6, 7, 8};
a = c;
for(int i = 0; i < a.length; i ++)
System.out.print(a[i] + " ");
System.out.print("\n");
for(int i = 0; i < b.length; i ++)
System.out.print(b[i] + " ");
System.out.print("\n");
}
}
Run Code Online (Sandbox Code Playgroud)
我已初始化数组a并将a的引用分配给新数组b.现在我初始化了一个新的数组c并将其引用传递给了数组a.由于数组b是对数组a的引用,因此b应该具有c中的新值,但b具有旧的a值.它背后的原因是什么?输出如下 -
输出 -
6 7 8
1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)