JDK 1.8 API中包含了很多內(nèi)置的函數(shù)式接口。有些是在以前版本的Java中大家耳熟能詳?shù)模鏑omparator接口,或者Runnable接口。對(duì)這些現(xiàn)成的接口進(jìn)行實(shí)現(xiàn),可以通過@FunctionalInterface 標(biāo)注來啟用Lambda功能支持。 

此外,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):