代码之家  ›  专栏  ›  技术社区  ›  en Lopes

用大小数计算百分比[重复]

  •  0
  • en Lopes  · 技术社区  · 6 年前

    我想计算以BigDecimal格式接收的数字的大小:

    BigDecimal number1 = new BigDecimal("17");
    int percentage = 50;
    BigDecimal percentageAmount = number1.multiply(new BigDecimal(percentage/100));
    

    但我得了0分!

    1 回复  |  直到 6 年前
        1
  •  2
  •   Shahid    6 年前

    将分割结果转换为 double

    BigDecimal percentageAmount = number1.multiply(new BigDecimal((double)percentage/100));
    

    或者,将值设为100到100.0。

    BigDecimal percentageAmount = number1.multiply(new BigDecimal(percentage/100.0));
    

    最佳方法

    BigDecimal percentageAmount = number1.multiply(BigDecimal.valueOf((double)percentage/100));