List的Insert和Add性能比较

第一次Insert测试时按照顺序测试:

List<int> Test = new List<int>();
            for (int i = 0; i < 100000; i++)
            {
                Test.Insert(i, i);
            }

Add:

  List<int> Test2 = new List<int>();
            for (int i = 0; i < 100000; i++)
            {
                Test2.Add(i);
            }

 第一次Insert耗时:0.19976秒

第一次Add耗时:0.10001秒

第一次结果我们就能看出Insert性能比Add要差近一半

第二次我们Insert的时候在随机插入看一下效果:

     List<int> Test = new List<int>();
            for (int i = 0; i < 100000; i++)
            {
                if (i > 9 && i % 9 == 0)
                    Test.Insert(i - 6, i);
                else
                    Test.Insert(i , i);
            }

Add:

 List<int> Test2 = new List<int>();
            for (int i = 0; i < 100000; i++)
            {
                if (i>9&& i % 9 == 0)
                    Test2.Add(i - 6);
                else
                    Test2.Add(i);
            }

第二次Insert耗时: 0.36421秒

第二次Add耗时:0.10071

两次结果显而易见,Add的性能更好,所以推荐使用Add,慎用Insert

原文地址:https://www.cnblogs.com/mimeng/p/15748987.html