zoukankan      html  css  js  c++  java
  • 把一个List<T>的数据复制至另一个List<T>

    把一个数据集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

  • 相关阅读:
    学习JNA,Jnative
    JNative用法注意事项
    使用JNA替代JNI调用本地方法
    傅盛读书笔记:下一个Moonshot是什么?
    华为内部狂转好文:有关大数据,看这一篇就够了
    ws2_32.dll的妙用与删除 (禁网)
    保护颈椎重点按这三大穴位(图)
    在java中调用python方法
    在Windows中实现Java调用DLL(转载)
    java程序员,英语那点事
  • 原文地址:https://www.cnblogs.com/insus/p/8127745.html
Copyright © 2011-2022 走看看