代码之家  ›  专栏  ›  技术社区  ›  Yakhoob

使用Java检查两个大十进制值之间的百分比

  •  1
  • Yakhoob  · 技术社区  · 8 年前

    我有两个大的十进制值1。工资2。EMI,我正在计算EMI在工资中的百分比。请查找代码。

    public static final BigDecimal ONE_HUNDRED = new BigDecimal(100);   
    
    public static void main(String[] args)  {
        BigDecimal salary = new BigDecimal("10000");
        BigDecimal emi = new BigDecimal("7000");
        System.out.println(salary.multiply(emi).divide(ONE_HUNDRED));
    }
    

    输出应该是70,因为7000是10000的70%。

    上面有什么问题吗?

    P、 S:我只从外部web服务中获取这两个值作为Bigdecimal。请不要要求使用浮点或整数。

    1 回复  |  直到 8 年前
        1
  •  5
  •   Ray Toal    8 年前

    你很接近!

    最后一行应该是:

    System.out.println(emi.multiply(ONE_HUNDRED).divide(salary));
    

    这会给你

    7000 * 100 / 10000 = 70