Lambda怎么在Java中項(xiàng)目中運(yùn)用

本篇文章為大家展示了Lambda怎么在Java中項(xiàng)目中運(yùn)用,內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

婺城ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

組織參數(shù)

組織參數(shù)目的就是為了第三方接口的調(diào)用,而且都要符合第三方 API 的要求。拿微信支付 APP  支付接口來舉個(gè)例子,它的請(qǐng)求報(bào)文大致是這樣的:

Lambda怎么在Java中項(xiàng)目中運(yùn)用

微信支付APP支付請(qǐng)求報(bào)文

如果我們記我們封裝后調(diào)用的入?yún)镮NPUT,將INPUT按照上述接口進(jìn)行組織滿足微信 APP  支付接口的參數(shù)為OUTPUT。那么它們的轉(zhuǎn)換關(guān)系其實(shí)就是下面的一個(gè)Lambda抽象:

INPUT -> OUTPUT

數(shù)學(xué)上為:

Lambda怎么在Java中項(xiàng)目中運(yùn)用

對(duì)應(yīng)Java中的Lambda函數(shù)是Function<INPUT>。

但是在實(shí)際開發(fā)中需要根據(jù)接口的具體情況做不同的處理,需要引入包含請(qǐng)求方法(上圖中的POST)和接口端點(diǎn),記作TYPE,高中我們講過函數(shù)替代法,我覺得這里可以用一用:

如果我們令 :

Lambda怎么在Java中項(xiàng)目中運(yùn)用

很容易推導(dǎo)出:

(TYPE,INPUT) -> OUTPUT

對(duì)應(yīng)Java中的Lambda函數(shù)是BiFunction

調(diào)用第三方接口

在Java開發(fā)中,無論你選擇的請(qǐng)求方式是Spring  Framework提供的RestTemplate或者反應(yīng)式客戶端WebClient,或者OKHttp都可以很方便地調(diào)用 Http  接口。也可以抽象,不管你用什么方法都是提供了一個(gè)調(diào)用工具,我們要拿工具來用就要get,因此非常適合Java中的

@FunctionalInterface public interface Supplier<T> {      /**      * Gets a result.      *      * @return a result      */     T get(); }

Lambda式子為:

() -> T

不過目前Payment Spring Boot對(duì)于調(diào)用層還沒有抽象的打算,如果考慮到抽象一定會(huì)用Supplier去實(shí)現(xiàn)。

消費(fèi)結(jié)果

最終我們都需要對(duì)調(diào)用獲取的結(jié)果進(jìn)行消費(fèi),宏觀上只能消費(fèi)一次。對(duì)應(yīng)的Lambda式子:

(T) -> {}

對(duì)T進(jìn)行消費(fèi)是沒有返回值的。就像吃一個(gè)蘋果,吃完之后是不會(huì)立即有產(chǎn)物的,否則你要趕緊吃點(diǎn) ?。

Java中提供了Consumer接口來作為消費(fèi)的Lambda接口,非常容易理解。

但是在Payment Spring  Boot中對(duì)請(qǐng)求結(jié)果是需要返回給調(diào)用端的,也就是需要返回值的,當(dāng)時(shí)我考慮了很久,在Function和Consumer之間,最終還是選擇了Consumer,或許就是它更接近消費(fèi)的本質(zhì)。

上述內(nèi)容就是Lambda怎么在Java中項(xiàng)目中運(yùn)用,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享題目:Lambda怎么在Java中項(xiàng)目中運(yùn)用
標(biāo)題網(wǎng)址:http://www.muchs.cn/article24/ihpsje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、企業(yè)建站、域名注冊(cè)營銷型網(wǎng)站建設(shè)、App開發(fā)虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司