1、
代码:
int[] array1 = new int[] { 1, 2, 3, 4, 5 };
int[] array2 = array1;
array2[0] = 100;
Console.WriteLine(array1[0]);
输出:
说明:
数组是引用类型,改变array2的值也就改变了array1的值,array2和array1引用的对象相同。
100
2、
代码:
int[] array3 = new int[] { 1, 2, 3, 4, 5 };
int[] array4=new int[5];
Array.Copy(array3, array4,array3 .Length );
array4[0] = 100;
Console.WriteLine(array3[0]);
输出:
1
说明:
调用Array的拷贝方法以后,array3和array4引用的对象不同,所以改变array4的值对array3没有影响。
3、
代码:
int[] array5 = new int[] { 1, 2, 3, 4, 5 };
int[] array6 = new int[3];
Array.Copy(array5,0, array6,0, array6.Length);
array6[0] = 100;
Console.WriteLine(array5[0]);
输出:
3
说明:
将一个数组的元素拷贝给另一个数组时,可以指定原始数组开始拷贝的索引以及目标数组开始的索引,以及总的需要拷贝的长度,且是深拷贝,改变其中一个数组并不能改变另一个数组的值。