用這樣二組資料來測驗
都發現stream比parallelStream執行速度要快,不是parallelStream應該會快嗎?
這個是不是哪里有問題啊。
List<String> list_value=https://bbs.csdn.net/topics/new ArrayList<>();
List<String> temp1=new ArrayList<>();
List<String> temp2=new ArrayList<>();
for(int i=0;i<40000000;i++)
{
list_value.add(String.valueOf(i));
}
LocalDateTime start= LocalDateTime.now();
//測驗一:
Stream<String> stringStream = list_value.stream().filter(x -> (Integer.parseInt(x) % 2) == 0);
List<String> collect = list_value.parallelStream().filter(x -> (Integer.parseInt(x) % 2) == 0).collect(Collectors.toList());
//測驗二:
list_value.stream().filter(x -> (Integer.parseInt(x) % 2) == 0).forEach(x->temp1.add(String.valueOf(x)));
list_value.parallelStream().filter(x -> (Integer.parseInt(x) % 2) == 0).collect(Collectors.toList()).forEach(x->temp2.add(String.valueOf(x)));
LocalDateTime end= LocalDateTime.now();
Duration timeElapsed = Duration.between(start, end);
System.out.println(temp1.size()+"\r\n"+temp2.size() +"\r\n"+start+"\r\n"+end +"\r\n"+timeElapsed );
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/249987.html
標籤:Web 開發
上一篇:java開發的宿舍管理系統
下一篇:MySQL
