請問 大牧老師, Java 類型 系統里自建的”函數式接口“有什么優勢呢?我自己也可以見一個”傳入參數“和”傳出參數“一樣的函數式接口,我不用Java自帶的有什么不好嗎?
函數接口 | 抽象方法 | 功能 | 參數 | 返回類型 | 示例 |
---|---|---|---|---|---|
Predicate | test(T t) | 判斷真假 | T | boolean | 9龍的身高大于185cm嗎? |
Consumer | accept(T t) | 消費消息 | T | void | 輸出一個值 |
Function | R apply(T t) | 將T映射為R(轉換功能) | T | R | 獲得student對象的名字 |
Supplier | T get() | 生產消息 | None | T | 工廠方法 |
UnaryOperator | T apply(T t) | 一元操作 | T | T | 邏輯非(!) |
BinaryOperator | apply(T t, U u) | 二元操作 | (T,T) | (T) | 求兩個數的乘積(*) |
像這樣的 “函數式接口” 比如像 Predicate 這樣傳入一個T,返回一個Boolean。 如果我也寫了一個“函數式接口”
@FunctionalInterface interface?TrueOrFalse(T?t){ ????boolean?test(T?t) }
這樣不是也可以嗎??
2020-04-18
自建的類型提供了通用操作,可以讓我們在寫lambda表達式的時候直接使用而避免再去創建新的函數式接口,只是一種語法上的優化,而非必須。如果自己要創建實現的話思路和意義亦然,只是功能重復的話就沒有必要了,個性化需求的話新創建就好啦吖,你說對吧。
2020-04-28
感謝大牧老師的解答 嘻嘻?