读书人

数组的CopyTo有什么用途啊

发布时间: 2012-07-16 15:44:59 作者: rapoo

数组的CopyTo有什么用处啊?
我觉得浅复制没什么用哇,直接引用不就好了,为什么有的程序会用到呢?有什么技巧在里面吗?

[解决办法]
CopyTo怎么会是浅复制呢? 货真价实的复制啊
[解决办法]

探讨

CopyTo怎么会是浅复制呢? 货真价实的复制啊

[解决办法]

前几天问的一个帖子。。。LZ参考一下
[解决办法]
C# code
int[] a = new int[3] { 1, 2, 3 };        int[] b = new int[3];        a.CopyTo(b, 0);        b[1] = 100;        for (int i = 0; i < a.Length; i++)            Response.Write(a[i] + "<br/>");        for (int i = 0; i < b.Length; i++)            Response.Write(b[i] + "<br/>");
[解决办法]
C# code
        static void Main(string[] args)        {            int[] a = { 1, 2, 3, 4 };            int[] b = new int[4];            a.CopyTo(b,0);            b[0] = 10;            Console.WriteLine("{0} - {1}",a[0],b[0]);            Console.Read();        }
[解决办法]
如果数组内的元素是引用类型,那么输出应该是一样的。所以浅复制应该是对的。
C# code
TextBox[] a = new TextBox[3] { new TextBox(), new TextBox(), new TextBox() };        TextBox[] b = new TextBox[3] { new TextBox(), new TextBox(), new TextBox() };        a[0].Text = "你好";        a.CopyTo(b, 0);        b[0].Text = "垃圾";        for (int i = 0; i < a.Length; i++)            Response.Write(a[i].Text + "<br/>");        for (int i = 0; i < b.Length; i++)            Response.Write(b[i].Text + "<br/>");
[解决办法]
另外CopyTo方法的第一个参数是Array类型,所以用此方法可以在各种数组集合间转换,比如泛型集合转成数组。
[解决办法]
探讨

如果数组内的元素是引用类型,那么输出应该是一样的。所以浅复制应该是对的。
C# code
TextBox[] a = new TextBox[3] { new TextBox(), new TextBox(), new TextBox() };
TextBox[] b = new TextBox[3] { new TextBox(), new TextBox(), new T……

读书人网 >C#

热点推荐