array

你发现什么规律了吗?

for (int i = 0; i < 5; i++)
{
a.SetValue((i+2).ToString(), i);
}
foreach (var item in a)
{
Console.WriteLine(item);
}

Console.WriteLine("&&&&&&&&&&&&&&&&&&&&&");

//string[] aa = (string[])a;
//foreach (var item in aa)
//{
// Console.WriteLine(item);
//}
//aa[1] = "100";
//Console.WriteLine("&&&&&&&&&&&&&&&&&&&&&");
//foreach (var item in a)
//{
// Console.WriteLine(item);
//}
//Console.WriteLine("&&&&&&&&&&&&&&&&&&&&&");
//foreach (var item in aa)
//{
// Console.WriteLine(item);
//}

string[] bb =(string[])a.Clone();
bb[1] = "100";
Console.WriteLine("&&&&&&&&&&&&&&&&&&&&&");
foreach (var item in a)
{
Console.WriteLine(item);
}
Console.WriteLine("&&&&&&&&&&&&&&&&&&&&&");
foreach (var item in bb)
{
Console.WriteLine(item);
}

string[] cc=new string[5]{"0","2","","",""};
a.CopyTo(cc,0);
cc[1] = "100";
Console.WriteLine("&&&&&&&&&&&&&&&&&&&&&");
foreach (var item in a)
{
Console.WriteLine(item);
}
Console.WriteLine("&&&&&&&&&&&&&&&&&&&&&");
foreach (var item in cc)
{
Console.WriteLine(item);
}

一:

a.Clone();会创建一个新数组

a.Copy()必须传递阶数相同且有足够元素的已有数组

二:

强制赋值,任何数组的元素改变,其他数组也改变

clone和copyto,任何数组的元素改变,其他数组也不变

原文地址:https://www.cnblogs.com/ChineseMoonGod/p/3657273.html