1、什么是Stream?
a、Stream在java8中被定義為泛型接口
b、Stream接口代表數據流
c、Stream不是一個數據結構,不直接存儲數據
d、Stream通過管道操作數據
e、創建Stream接口實現類對象:
stream(): 創建一個Stream接口實現類的對象
例如:Stream stream=people.stream(); // people是ArrayList對象
2、什么是管道
管道:代表一個操作序列
管道包含以下組件:
①、數據集:可能是集合、數組等。
②、零個或多個中間業務。如過濾器
③、一個終端操作,如forEach
3、什么是過濾器
①、過濾器:用給定的條件在源數據基礎上過濾新的數據,並返回一個Stream對象。
②、過濾器包含匹配的謂詞
例如:判斷p對象是否為男性的lambda表達式:
Stream stream = people.stream();
stream=stream.filter(p->p.getGender()=='男');
eg:創建一個元素為Person類的集合:people使用Stream和forEach顯示該集合所有元素