此外,Java 8 API 還提供了很多新的函數(shù)式接口,來降低程序員的工作負(fù)擔(dān)。有些新的接口已經(jīng)在Google Guava庫中很有名了。如果你對(duì)這些庫很熟的話,你甚至閉上眼睛都能夠想到,這些接口在類庫的實(shí)現(xiàn)過程中起了多么大的作用。
Predicates
Predicate是一個(gè)布爾類型的函數(shù),該函數(shù)只有一個(gè)輸入?yún)?shù)。Predicate接口包含了多種默認(rèn)方法,用于處理復(fù)雜的邏輯動(dòng)詞(and, or,negate):
- Predicate<String> predicate = (s) -> s.length() > 0;
- predicate.test("foo"); // true
- predicate.negate().test("foo"); // false &nbs