JDK 函式式介面 Predicate

2021-08-08 11:22:36 字數 977 閱讀 6996

inte***ce predicate
標準函式式介面 predicate,它代表著乙個斷言, predicate 的中文意思就是斷言。有些人可能對斷言這個詞有些陌生,通俗地講,斷言就是對乙個物件或是乙個基本資料作出判斷,要麼判斷為 true ,要麼判斷為 false ,可見,斷言的結果是 boolean 型別的。

既然涉及到斷言(判斷),就需要斷言標準和等待斷言的物件或是等待斷言的基本資料。泛型介面 predicate的尖括號有乙個型別引數 t,它是該介面抽象方法 test 的引數型別。抽象方法的型別為 t 的引數就是等待斷言的物件,那斷言的標準是什麼呢?我們先來看看 predicate唯一的抽象方法 test 的定義:

boolean test(t t);
該抽象方法的功能是根據斷言標準,對等待斷言的物件,也就是引數 t t ,評估出結果。若是等待斷言的物件 t t 符合斷言標準,該抽象方法返回 true ,否則返回 false 。標準函式式介面的實現方式可以使用匿名類,也可以使用 lambda 表示式,但無論使用哪一種,都必須對唯一的抽象方法 test 作出實現,實現的邏輯就是斷言的標準。

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

JDK1 8 函式式介面

前言 公司專案中大量使用了該新特性,故對此進行學習總結 consumer消費型介面 之所以叫做消費型按照我的理解 消費 邏輯處理 傳入的資料 抽象方法 void accept t t 接收乙個引數進行消費,但無需返回結果。介面.accept x 意思就是將x的引數,帶入到介面裡去執行 預設方法 an...

JDK1 8 函式式介面

介面只有乙個抽象方法,稱之為函式式介面 該介面被 functionalinte ce修飾 functionalinte ce public inte ce comparator 表示式aaa system.out.println thread.currentthread getname 執行緒啟動了...

JDK1 8新特性函式式介面

對於只有乙個抽象方法的介面,需要這種介面的物件,就可以提供乙個lambda表示式。這種介面稱為函式式介面 functional inte ce 在定義函式式介面的時候可以加入 functionalinte ce註解來修飾該介面 documented retention retentionpolicy...