java中Bigdecimal数据类型

来源:互联网 发布:js 中splice方法 编辑:程序博客网 时间:2024/05/22 09:43

面试问题:使用java的什么数据类型,处理2000000000.16,与16.23相加,并输出最后的结果?

                          不推荐:double  p1 = 2000000000.16 ; double p2 = 16.23 ;

                                        double  sum = p1+p2 ;   sum :2.000000000      sum: 2.00000001639E9  (E9: 10的9次方)

    推荐:
//BigDecimalBigDecimal price1 = new BigDecimal(2000000000.16);BigDecimal price2 = new BigDecimal(16.23);BigDecimal sum = price1.add(price2);//DecimalFormat df = new DecimalFormat("0.00");//String format = df.format(sum);//四舍五入BigDecimal bigDecimal = sum.setScale(2, BigDecimal.ROUND_HALF_UP);System.out.println("bigDecimal\t"+bigDecimal);

原创粉丝点击