我可以提供一个简单的算法:

  1. 查询优惠表,找到第一个大于等于客户充值金额的阈值和对应的减免金额。

  2. 如果找到了,则将充值金额减去减免金额,得到最终充值金额。

  3. 如果没有找到,则没有优惠,最终充值金额就是客户充值金额。

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表示减免金额

现有一个表存放优惠减免的阈值和减免的金额客户充值一笔钱java通过算法计算最终充值的金额

原文地址: https://www.cveoy.top/t/topic/fJz8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录