亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何把我的switch優雅的寫(我在這switch中有150多個case)

如何把我的switch優雅的寫(我在這switch中有150多個case)

慕尼黑1392957 2020-03-26 14:57:29
case "A.2.2": // 車站出站量 統計期間各日累計 線路各車站分別列示 result.setDataList(indexData.getStationInformationList()); break; case "A.2.3": // 線路日均進站量 線路進站量/統計天數 計算 BigDecimal arrivalVolOfLine = new BigDecimal(Constants.ZERO); // 線路進站量 if (indexData.getPassengerFlowMaintenance() != null) { arrivalVolOfLine = indexData.getPassengerFlowMaintenance().getAcInboundVolume(); } // 線路日均進站量 BigDecimal dailyAvg = new BigDecimal(Constants.ZERO); if (statisticalDays.compareTo(Constants.ZEROBD) != Constants.ZERO) { dailyAvg = arrivalVolOfLine.divide(statisticalDays, Constants.TWO, BigDecimal.ROUND_HALF_UP); } result.setData(dailyAvg.toString()); break; case "A.2.40": // 換乘站換乘量 統計期間各日累計 線路各車站分別列示 result.setDataList(indexData.getStationInformationList()); break;
查看完整描述

3 回答

?
慕尼黑7377501

TA貢獻2條經驗 獲得超0個贊

各種方法上定義一個高級接口, 每一個實現都做成一個實現, 這樣, 模仿HttpServletDespatcher, 把case當做key, 只是需要用更多的類拆分當前這個超級方法, 當然, 擴展和修改會非常的簡單.

查看完整回答
反對 回復 2020-09-07
?
柳太爺

TA貢獻46條經驗 獲得超4個贊

用state模式代替switch-case

查看完整回答
反對 回復 2020-03-26
  • 慕尼黑1392957
    慕尼黑1392957
    我看了一下,我對state的解決理解是。我現在的行為只是得到一個值。那么我的實現類得150多個。這樣更麻煩了 我這樣理解對嗎
  • 柳太爺
    柳太爺
    意思差不多,是挺麻煩的
  • 3 回答
  • 0 關注
  • 3029 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號