码迷,mamicode.com
首页 > 其他好文 > 详细

ArrayList与List性能测试

时间:2018-12-23 12:46:47      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:存储   test   span   技术分享   div   add   读取数据   data   write   

理论:由于ArrayList存储数据存在装箱(读取数据存在拆箱),而泛型List<T>直接对T类型数据进行存储,不存在装箱与拆箱拆箱操作,理论上速度应该快一些。

废话少说,上代码。

 1    public void Test2()
 2         {
 3             float testData = 0.01f;
 4             long length = 100000000;
 5             Stopwatch sw = new Stopwatch();
 6             sw.Start();
 7             ArrayList arrayList = new ArrayList();
 8             for (long i = 0; i < length; i++)
 9             {
10                 arrayList.Add(testData);
11             }
12             sw.Stop();
13 
14             Stopwatch sw2 = new Stopwatch();
15             sw2.Start();
16             List<float> list = new List<float>();
17             for (int i = 0; i < length; i++)
18             {
19                 list.Add(testData);
20             }
21             sw2.Stop();
22             Console.WriteLine("{0}次ArrayList装箱时间{1}", length, sw.Elapsed);
23             Console.WriteLine("{0}次List装箱时间     {1}", length, sw2.Elapsed);
24 
25         }

技术分享图片

输出结果ArrayList进行1亿此装箱操作耗时9秒多,而List<T>泛型直接存储数据不到1秒,性能高下立见。

 

ArrayList与List性能测试

标签:存储   test   span   技术分享   div   add   读取数据   data   write   

原文地址:https://www.cnblogs.com/blackteeth/p/10163771.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!