Java?8函數(shù)式接口之BinaryOperator使用示例詳解
Java 8函數(shù)式接口BinaryOperator<T>
是 BiFunction<T, T, T> 的子接口。
它表示接受兩個(gè)相同類型的輸入?yún)?shù) T 并返回一個(gè)結(jié)果 T 的操作。
BinaryOperator<T> 接口用法示例
import java.util.function.BinaryOperator; public class BinaryOperatorExample { public static void main(String[] args) { // 示例1:對(duì)兩個(gè)整數(shù)進(jìn)行相加 BinaryOperator<Integer> add = (num1, num2) -> num1 + num2; int sum = add.apply(5, 3); System.out.println(sum); // 輸出: 8 // 示例2:比較兩個(gè)字符串的長(zhǎng)度并返回較長(zhǎng)的那個(gè) BinaryOperator<String> longerString = (str1, str2) -> str1.length() >= str2.length() ? str1 : str2; String result = longerString.apply("Hello", "World"); System.out.println(result); // 輸出: Hello // 示例3:組合多個(gè)函數(shù) BinaryOperator<Integer> multiplyAndAdd = (num1, num2) -> (num1 * 2) + (num2 * 3); sum = multiplyAndAdd.apply(2, 3); System.out.println(sum); // 輸出: 13 } }
在示例1中,我們創(chuàng)建了一個(gè) BinaryOperator<Integer>
對(duì)象 add,用于對(duì)兩個(gè)整數(shù)進(jìn)行相加。通過(guò)調(diào)用 apply
方法,并將數(shù)字 5 和 3 作為參數(shù)傳入,我們可以得到結(jié)果 8。
在示例2中,我們創(chuàng)建了一個(gè) BinaryOperator<String>
對(duì)象 longerString,用于比較兩個(gè)字符串的長(zhǎng)度并返回較長(zhǎng)的那個(gè)。通過(guò)調(diào)用 apply
方法,并將字符串 "Hello" 和 "World" 作為參數(shù)傳入,我們可以得到結(jié)果 "Hello",因?yàn)?"Hello" 的長(zhǎng)度更長(zhǎng)。
在示例3中,我們將兩個(gè)函數(shù) multiplyAndAdd 進(jìn)行組合。首先將第一個(gè)整數(shù)乘以2,然后將第二個(gè)整數(shù)乘以3,并將兩個(gè)結(jié)果相加。通過(guò)調(diào)用 apply
方法,并將數(shù)字 2 和 3 作為參數(shù)傳入,我們可以得到結(jié)果 13。
以上就是Java 8函數(shù)式接口之BinaryOperator使用示例詳解的詳細(xì)內(nèi)容,更多關(guān)于Java8函數(shù)式接口BinaryOperator的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Spring Boot中自動(dòng)化配置的利弊以及解決方法
這篇文章主要給大家介紹了關(guān)于Spring Boot中自動(dòng)化配置的利弊以及解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-08-08Spring boot 數(shù)據(jù)庫(kù)連接斷線重連問(wèn)題
這篇文章主要介紹了Spring boot 數(shù)據(jù)庫(kù)連接斷線重連問(wèn)題,需要的朋友可以參考下2017-06-06Java套接字(Socket)網(wǎng)絡(luò)編程入門
這篇文章主要介紹了Java套接字(Socket)網(wǎng)絡(luò)編程入門,Socket可以理解為是對(duì)TCP/IP協(xié)議的抽象,需要的朋友可以參考下2015-10-10SpringBoot集成ElasticSearch實(shí)現(xiàn)搜索功能
本文主要介紹了Spring Boot 集成ElasticSearch實(shí)現(xiàn)搜索功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-03-03使用.NET Core3.0創(chuàng)建一個(gè)Windows服務(wù)的方法
這篇文章主要介紹了使用.NET Core3.0創(chuàng)建一個(gè)Windows服務(wù)的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-04-04mybatis實(shí)現(xiàn)mapper配置并查詢數(shù)據(jù)的思路詳解
這篇文章主要介紹了mybatis實(shí)現(xiàn)mapper配置并查詢數(shù)據(jù),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04InterProcessMutex實(shí)現(xiàn)zookeeper分布式鎖原理
本文主要介紹了InterProcessMutex實(shí)現(xiàn)zookeeper分布式鎖原理,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03