Ai
1 Star 1 Fork 0

codeboyzhou/design-pattern

Create your Gitee Account
Explore and code with more than 13.5 million developers,Free private repositories !:)
Sign up
文件
This repository doesn't specify license. Please pay attention to the specific project description and its upstream code dependency when using it.
Clone or Download
UserPaymentStrategyDemo.java 1.13 KB
Copy Edit Raw Blame History
codeboyzhou authored 2020-05-08 11:16 +08:00 . 策略模式及其优化
package com.gitee.designpattern.strategy;
import java.math.BigDecimal;
/**
* 模拟业务代码对策略模式的调用
*
* @author codeboy zhou
*/
public class UserPaymentStrategyDemo {
/**
* 计算用户最终应支付的订单总金额
*
* @param userVipLevel 用户会员等级
* @param originalMoney 用户应支付的原始订单总金额
*
* @return 用户最终应支付的订单总金额
*/
public BigDecimal needPay(UserVipLevelEnum userVipLevel, BigDecimal originalMoney) {
return UserPaymentStrategyFactory.getUserPaymentStrategy(userVipLevel).needPay(originalMoney);
}
public static void main(String[] args) {
BigDecimal originalMoney = BigDecimal.valueOf(111);
UserPaymentStrategyDemo demo = new UserPaymentStrategyDemo();
System.out.println(demo.needPay(UserVipLevelEnum.DEFAULT, originalMoney));
System.out.println(demo.needPay(UserVipLevelEnum.BRONZE, originalMoney));
System.out.println(demo.needPay(UserVipLevelEnum.SILVER, originalMoney));
System.out.println(demo.needPay(UserVipLevelEnum.GOLD, originalMoney));
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/codeboyzz/design-pattern.git
git@gitee.com:codeboyzz/design-pattern.git
codeboyzz
design-pattern
design-pattern
master

Search