标题:[讨论]几種複製數組的方法(數組裡面為值類型)
只看楼主
chenjin145
Rank: 1
等 级:禁止访问
帖 子:3922
专家分:0
注 册:2006-7-12
 问题点数:0 回复次数:1 
[讨论]几種複製數組的方法(數組裡面為值類型)
int[] i=new int[10000];
for(int j=0;j<10000;j++)
{
i[j]=j;
}
int[] iclone=(int[])i.Clone(); // 淺層複製
int[] icopy=new int[10000];
i.CopyTo(icopy,0); //複製所有元素
int[] newtempi=new int[10000];
newtempi=i; //定義實例再引用
int[] tempi=i; //沒有定義實例引用
for(int j=0;j<10000;j++)
{
i[j]=9;
}
for(int j=0;j<10000;j++)
{
tempi[j]=8;
}
for(int j=0;j<10;j++)
{
Console.Write(iclone[j].ToString()); //輸出0 1 2 3 4 5 6 7 8 9
Console.Write(icopy[j].ToString()); //輸出0 1 2 3 4 5 6 7 8 9
Console.Write(newtempi[j].ToString()); //以下輸出8 8 8 8 8 8 8 8 8
Console.Write(tempi[j].ToString());
Console.Write(i[j].ToString());
}
Console.ReadLine();
誰有空的話再比較下花費的時間, 而且再把數組裡面換成引用類型, 會發現有點不同

[此贴子已经被作者于2006-7-19 15:12:50编辑过]

2006-07-19 15:10
月夜枫华
Rank: 4
等 级:贵宾
威 望:12
帖 子:437
专家分:42
注 册:2006-1-2
得分:0 
使用循环比较消耗时间,使用Array.Copy()方法
我测试过,在较大数据量的时候会有差别

2006-07-19 16:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-79178-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.435147 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved