前言
上篇文章我們介紹了Stream流的最終操作!
- 兩篇博客帶你搞定Java8 Stream操作 第一篇
接下來,我們繼續瞭解一下Stream的中間操作!
中間操作
Filter操作
通過名字,我們就能知道,filter是用於過濾的。通過自定義過濾條件,就可以根據條件對流中的元素進行相應的過濾操作!
//過濾出成績大於99的人的集合
List<Person> collect = s.filter(person -> person.getScole() > 99).collect(Collectors.toList());
System.out.println(collect);
Distinct去重
distinct操作可以幫助我們快速去除集合中的重複元素,distinct的去重規則如下
- 先判斷 hashCode()
- 再判斷 equals()
只有兩個條件都滿足了,纔會被認定爲重複元素,進行去重
List<Person> collect1 = s.distinct().collect(Collectors.toList());