久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Java如何優(yōu)雅替換if-else語句

瀏覽:55日期:2023-02-10 10:08:39
目錄場景1.優(yōu)先判斷條件,不滿足及時(shí)中斷2.策略模式改造3.策略模式+工廠+單例模式,錦上添花場景

日常開發(fā),if-else語句寫的不少吧??當(dāng)邏輯分支非常多的時(shí)候,if-else套了一層又一層,雖然業(yè)務(wù)功能倒是實(shí)現(xiàn)了,但是看起來是真的很不優(yōu)雅,尤其是對于我這種有強(qiáng)迫癥的程序'猿',看到這么多if-else,腦袋瓜子就嗡嗡的,總想著解鎖新姿勢:干掉過多的if-else!!!

本文將介紹三板斧手段:

優(yōu)先判斷條件,條件不滿足的,邏輯及時(shí)中斷返回; 融入策略模式; 策略模式+工廠+單例模式,錦上添花;

接下來先附上一段很久以前自己寫的業(yè)務(wù)代碼,核心邏輯就是在支付回調(diào)中根據(jù)用戶購買的價(jià)格包賦予用戶對應(yīng)的權(quán)益(VIP視頻會員天數(shù)+抽獎機(jī)會次數(shù))。我的天,太多if-else了……(看不清楚可以點(diǎn)擊圖片放大)

Java如何優(yōu)雅替換if-else語句

1.優(yōu)先判斷條件,不滿足及時(shí)中斷

這點(diǎn)非常容易理解,就是說在業(yè)務(wù)邏輯里面,先把不符合條件的給先過濾掉,而不是層層嵌套if-else判斷,結(jié)合代碼圖看一下:

Java如何優(yōu)雅替換if-else語句

Java如何優(yōu)雅替換if-else語句

2.策略模式改造

先用策略模式替換掉文章開頭講到的,用戶充值后根據(jù)價(jià)格包(付的多少錢)給用戶增加VIP天數(shù)及抽檢機(jī)會次數(shù)的邏輯,我這里就簡化成'根據(jù)-價(jià)格包區(qū)分給用戶增加不同的體育會員視頻VIP天數(shù)'這個(gè)動作來講解:

Java如何優(yōu)雅替換if-else語句

Java如何優(yōu)雅替換if-else語句

Java如何優(yōu)雅替換if-else語句

Java如何優(yōu)雅替換if-else語句

Java如何優(yōu)雅替換if-else語句

表面上看,代碼稍微優(yōu)雅了點(diǎn),但是還是沒和if-else徹底說拜拜,且recharge()充值方法可單獨(dú)拎出來,只需要根據(jù)priceCode實(shí)例化不同的策略對象即可:

Java如何優(yōu)雅替換if-else語句

3.策略模式+工廠+單例模式,錦上添花

接下來使用'工廠類+單例'來給代碼加點(diǎn)料:

Java如何優(yōu)雅替換if-else語句

Java如何優(yōu)雅替換if-else語句

到此這篇關(guān)于Java如何優(yōu)雅替換if-else語句的文章就介紹到這了,更多相關(guān)Java替換if-else語句內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 万年县| 涿鹿县| 南通市| 乐安县| 明星| 会同县| 禹州市| 延津县| 昆明市| 镇巴县| 永州市| 凤山市| 福海县| 荔波县| 微山县| 黑龙江省| 霍林郭勒市| 湘潭县| 福清市| 股票| 武夷山市| 曲周县| 沅陵县| 乃东县| 湘乡市| 白水县| 贵德县| 临江市| 阳西县| 黄龙县| 雷山县| 扎囊县| 忻城县| 元谋县| 景泰县| 阿拉尔市| 平南县| 博湖县| 克拉玛依市| 合川市| 兰考县|