现有一个表存放优惠减免的阈值和减免的金额客户充值一笔钱java通过算法计算最终充值的金额
我可以提供一个简单的算法:
-
查询优惠表,找到第一个大于等于客户充值金额的阈值和对应的减免金额。
-
如果找到了,则将充值金额减去减免金额,得到最终充值金额。
-
如果没有找到,则没有优惠,最终充值金额就是客户充值金额。
Java代码实现:
public static double calculateRechargeAmount(double rechargeAmount, Map<Double, Double> discountTable) {
double finalAmount = rechargeAmount;
for (Map.Entry<Double, Double> entry : discountTable.entrySet()) {
if (rechargeAmount >= entry.getKey()) {
finalAmount = rechargeAmount - entry.getValue();
break;
}
}
return finalAmount;
}
其中,discountTable是优惠表,使用Map<Double, Double>表示,key表示阈值,value表示减免金额
原文地址: https://www.cveoy.top/t/topic/fJz8 著作权归作者所有。请勿转载和采集!