原始数据类型的Java数组

Igo*_*Diy 4 java arrays types pass-by-reference pass-by-value

为什么下一个代码使用引用类型而不是原始类型?

int[] a = new int[5];
int[] b = a;
a[0] = 1;
b[0] = 2;
a[1] = 1;
b[1] = 3;
System.out.println(a[0]);
System.out.println(b[0]);
System.out.println(a[1]);
System.out.println(b[1]);
Run Code Online (Sandbox Code Playgroud)

输出为:2 2 3 3而不是1 2 1 3

ste*_*vls 6

int数组的内容可能不是引用,但int []变量是.通过设置b = a您正在复制引用,两个数组指向同一块内存.