Lambda表達(dá)式的目標(biāo)類型必須是函數(shù)式接口单雾。函數(shù)式接口代表只包含一個(gè)抽象方法的接口
四大函數(shù)式接口 | 參數(shù) | 返回 | 描述 |
---|---|---|---|
Consumer<T> | T | void | 指定一個(gè)泛型傳入 |
Supplier<T> | 無(wú) | T | 指定一個(gè)泛型并返回 |
Predicate<T> | T | 布爾 | 輸入?yún)?shù)進(jìn)行判斷齿诉,然后返回布爾值 |
Function<T,R> | T | R | 兩個(gè)參數(shù),T輸入 R輸出 |
Stream | 描述 |
---|---|
Stream | 一種鏈?zhǔn)胶瘮?shù)式編程嫌松,流終結(jié)了就不能再次操作,簡(jiǎn)化Collection集合操作 |
void forEach(Consumer<? super T> action); | 用來(lái)便利奕污,終結(jié)方法 |
Stream<T> filter(Predicate<? super T> predicate); | 用于過(guò)濾萎羔,返回符合條件的元素 |
<R> Stream<R> map(Function<? super T, ? extends R> mapper); | 輸入一個(gè)參數(shù),返回一個(gè)參數(shù) |
long count(); | 終結(jié)方法碳默,返回元素個(gè)數(shù) |
Stream<T> limit(long maxSize); | 截取前n個(gè)元素 |
Stream<T> skip(long n); | 跳過(guò)前n個(gè)元素 |