Java-如何将计算语句结果四舍五入到两个有效数字



Java新手,编程新手。下面的代码是一个已经完美运行的程序的最后几行——我只想对最终结果(newTution变量)进行四舍五入,并将其限制为两个有效数字。

newTution、TUITIONINCREASE和学费都是双倍的。

    newTuition = ((TUITIONINCREASE * .01) * tuition) + tuition + ".");
    System.out.println("Your current tuition is $" + tuition + ". It will rise next year by " + TUITIONINCREASE + "% and " +
    "your new tuition will be $" + newTuition);

注释是正确的。不要使用浮点数。您需要的是BigDecimal类。这将在数学运算过程中为您保留精度,并包含舍入和截断方法。

http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html

使用BigDecimal。四舍五入:http://docs.oracle.com/javase/1.5.0/docs/api/java/math/BigDecimal.html#round(java.math.MathContext

像这样:

BigDecimal rounded = value.round(new MathContext(2, RoundingMode.HALF_UP));
System.out.println(value + ": " + rounded);

相关内容

  • 没有找到相关文章

最新更新