public class Array
{
public static void main(String args[])
{
int a[]= {1,2,3};
int b[];
b = a;
b[2] = 100;
System.out.printf("a[0] = %-3d a[1]= %-3d a[2]= %-3d\n",a[0],a[1],a[2]);
System.out.printf("b[0] = %-3d b[1]= %-3d b[2]= %-3d\n",b[0],b[1],b[2]);
}
}
初学,一个小问题,运行后结果如下,为什么不是a[2] = 3,难道java中数组赋值后b数组和a数组共用内存吗?
a[0] = 1   a[1]= 2   a[2]= 100
b[0] = 1   b[1]= 2   b[2]= 100