[ JDK ] 函數式接口 Predicate

Interface Predicate<T>

標準函數式接口 Predicate<T> ,它代表着一個斷言, Predicate 的中文意思就是斷言。有些人可能對斷言這個詞有些陌生,通俗地講,斷言就是對一個對象或是一個基本數據作出判斷,要麼判斷爲 true ,要麼判斷爲 false ,可見,斷言的結果是 boolean 類型的。


既然涉及到斷言(判斷),就需要斷言標準和等待斷言的對象或是等待斷言的基本數據。泛型接口 Predicate<T>  的尖括號有一個類型參數 T,它是該接口抽象方法 test 的參數類型。抽象方法的類型爲 T 的參數就是等待斷言的對象,那斷言的標準是什麼呢?我們先來看看 Predicate<T> 唯一的抽象方法 test 的定義:

boolean test(T t);

該抽象方法的功能是根據斷言標準,對等待斷言的對象,也就是參數 T t ,評估出結果。若是等待斷言的對象 T t 符合斷言標準,該抽象方法返回 true ,否則返回 false 。標準函數式接口的實現方式可以使用匿名類,也可以使用 Lambda 表達式,但無論使用哪一種,都必須對唯一的抽象方法 test 作出實現,實現的邏輯就是斷言的標準。


比如,實現的邏輯是篩選出符合美國義務兵役制度,具體條件是男性且年齡在 18 至 25 歲之間的應用會員。其中,“符合美國義務兵役制度,具體條件是男性且年齡在18至25歲之間”是斷言標準,“應用會員”就是等待斷言的對象。










更多技術交流,敬請關注微信公衆號,掃一掃下方二維碼即可關注:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章