关于Java中两个数组的复制(b=a)

1、
在Java中b=a和a=b是一样的意思。
= 是让两个变量引用同一数组,即他们指向同一个东西。
其中一个改变另一个也当然会改变 。
public class JJave 
{
	public static void main(String args[])
	{
		int a[]={100,200,300};
		int b[]={10,11,12,13,14,15,16};
		b=a;
		b[0]=123456;
		System.out.println("数组a:"+a[0]+","+a[1]+","+a[2]);
		System.out.println("数组b的长度:"+b.length);
		System.out.println("数组b:"+b[0]+","+b[1]+","+b[2]);
	}
}
运行结果如下:

2、
但是在C++中,b=a的意义是将指针a的值赋给指针b,数组的指针都是const型的,不可以改变其值,所以会产生编译错误。要想将数组a的值赋给数组b,可以通过for循环来实现。
//a[3],b[3];
for(i=0;i<3;i++)
{
     b[i]=a[i];
}


原文地址:https://www.cnblogs.com/IT-hexiang/p/4084604.html