咱們知道float最大精度是7-8位有效數字,而double的最大精度是16-17位有效數字,那麼大於16位的咱們怎麼來表示呢?這就須要用到BigDecimal,用來對超過16位有效位的數進行精確的運算。 BigDecimal常常在銀行、帳務系統進行使用。java
class MathUtil{ public MathUtil() {} public static double round(double num, int scale) { return new BigDecimal(num).divide(new BigDecimal(1.0), scale, RoundingMode.HALF_UP).doubleValue(); } } public class BigDecTest { public static void main(String[] args) { System.out.println(MathUtil.round(19.67855, 2)); } }
運行結果:ide
本文由博客羣發一文多發等運營工具平臺 OpenWrite 發佈