把一个数据集List<T>复制至到另一个数据集List<T>。
方法一,可以使用循环,然后把每一个T添加至另一个集合中去:
public void ListDemo() { var listA = new List<int> { 2, 5, 6, 8, 23, 56, 4 }; var listB = new List<int>(); foreach (int a in listA) { listB.Add(a); } }
Source Code
方法二,使用GetRange方法:
public void ListDemo_A() { var listA = new List<int> { 2, 5, 6, 8, 23, 56, 4 }; var listB = listA.GetRange(0, listA.Count); }
Source Code
方法三,深度拷贝:
public void ListDemo_B() { var listA = new List<int> { 2, 5, 6, 8, 23, 56, 4 }; var listB = new List<int>(); using (MemoryStream ms = new MemoryStream()) { BinaryFormatter bf = new BinaryFormatter(); bf.Serialize(ms, listA); ms.Position = 0; listB = (List<int>)bf.Deserialize(ms); } }
Source Code
方法四,直接加载法:
public void ListDemo_C() { var listA = new List<int> { 2, 5, 6, 8, 23, 56, 4 }; var listB = new List<int>(listA); }
Source Code
方法五:使用序列化与反序列化:
public void ListDemo_D() { var listA = new List<int> { 2, 5, 6, 8, 23, 56, 4 }; var listB = JsonConvert.DeserializeObject<List<int>>(JsonConvert.SerializeObject(listA)); }
Source Code
不管是哪一种方法,可以抽控制台输出ListB集合:
foreach (int inta in listB) { Console.WriteLine(inta); }
以下内容于2017-12-17 21:43分添加:
上面几个方法中,发现没有入口,可以
运行:
f
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
相关文章推荐
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦