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

测试 for foreach stream 性能

时间:2020-01-15 11:31:27      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:common   war   size   图片   span   pre   googl   array   cto   

 1 import com.google.common.collect.Lists;
 2 import org.junit.Test;
 3 
 4 import java.util.List;
 5 import java.util.stream.Collectors;
 6 
 7 /**
 8  *
 9  */
10 public class Demo {
11 
12     @Test
13     public void test() throws InterruptedException {
14 //        int size = 5000000;
15         int size = 50000000;
16 
17         Thread.sleep(1000);
18 
19         long t1s = System.currentTimeMillis();
20         List<Integer> list1 = Lists.newArrayListWithExpectedSize(size);
21         for (int i = 0; i < size; i++) {
22             list1.add(i + 1);
23         }
24         long t1e = System.currentTimeMillis();
25         System.out.println("for 循环 耗时:" + (t1e - t1s) + " , size = " + list1.size());
26 
27 
28         long t2s = System.currentTimeMillis();
29         List<Integer> list2 = Lists.newArrayListWithExpectedSize(size);
30         list1.forEach(
31                 i -> list2.add(i + 1)
32         );
33         long t2e = System.currentTimeMillis();
34         System.out.println("foreach  耗时:" + (t2e - t2s) + " , size = " + list2.size());
35 
36 
37         long t3s = System.currentTimeMillis();
38         List<Integer> list3 = list1.stream().map(i -> i + 1).collect(Collectors.toList());
39         long t3e = System.currentTimeMillis();
40         System.out.println("stream  耗时:" + (t3e - t3s) + " , size = " + list3.size());
41 
42         Thread.sleep(1000);
43     }
44 
45 
46 }

测试结果:

技术图片

 

 

 

技术图片

 

 

技术图片

 

 

技术图片

 

 

技术图片

 

 

技术图片

测试 for foreach stream 性能

标签:common   war   size   图片   span   pre   googl   array   cto   

原文地址:https://www.cnblogs.com/sanmubird/p/12195539.html

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