11.BigDecimal类
BigDecimal类
-
思考:以下程序输出结果是多少?
-
package BigDecmal; public class Test01 { public static void main(String[] args) { double d1 = 1.0; double d2 = 0.9; System.out.println(d1-d2);//0.09999999999999998 // 面 试 题 /* 出现原因:很多实际应用中需要精确运算, 而double是近似值存储,不再符合要求, 需要借助BigDecimal。 */ double result = (1.4-0.5)/0.9; System.out.println(result);//0.9999999999999999 } } -
位置:java.math包中。
-
作用:精确计算浮点数。
-
创建方式:
BigDecimal bd = new BigDecimal("1.0"); -
package BigDecmal; import java.math.BigDecimal; public class Test01 { public static void main(String[] args) { // BigDecimal,大的浮点数精确计算 BigDecimal bd1 = new BigDecimal("1.0"); BigDecimal bd2 = new BigDecimal("0.9"); // 减 法 BigDecimal subtract = bd1.subtract(bd2); System.out.println(subtract); // 加 法 BigDecimal add = bd1.add(bd2); System.out.println(add); // 乘 法 BigDecimal multiply = bd1.multiply(bd2); System.out.println(multiply); // 除 法 BigDecimal divide = new BigDecimal("1.4").subtract(new BigDecimal("0.5")).divide(new BigDecimal("0.9")); System.out.println(divide); } }

浙公网安备 33010602011771号