数组之间直接赋值只是引用赋值
//创建两个数组 int [] a ={1,2,3,4}; int [] b=new int[4]; //将数组a赋值给b b=a; //遍历数组a System.out.print(" 数组A:"); for (int i=0;i<a.length;i++) System.out.print(a[i]); System.out.println(); //遍历数组b System.out.print(" 数组B:"); for (int i=0;i<a.length;i++) System.out.print(b[i]); System.out.println("\n数组A的a[2]元素修改后:"); //修改数组a的值后输出a数组 a[2]=7; System.out.print(" 数组A:"); for (int i=0;i<a.length;i++) System.out.print(a[i]); System.out.println(); //再次输出b数组 System.out.print(" 数组B:"); for (int i=0;i<a.length;i++) System.out.print(b[i]); }
输出结果是:

说明数组 b=a;是b引用了a数组,当a数组中的元素值改变时,b数组中的元素值也会改变,怎样才能将数组a的元素赋值给数组b,而且不受a的影响呢?
答案是:
//将数组a赋值给b b=a.clone();
输出结果:

赋值后数组b不再受到数组a的影响。
浙公网安备 33010602011771号