黑马程序员技术交流社区

标题: BigDecimal除数为0和无限循环小数的情况 [打印本页]

作者: peiyanda    时间: 2015-12-27 21:32
标题: BigDecimal除数为0和无限循环小数的情况
                                                                                                [backcolor=rgb(100.000000%, 100.000000%, 100.000000%)]                                                                                                                        [size=13.000000pt]BigDecimal a=new BigDecimal("10");

[size=13.000000pt]BigDecimal b=new BigDecimal("3");
[size=13.000000pt]System.out.println(a.divide(b));/**异常**/
这种情况在普通情况下很少发生,但是要是以后到公司中坐业务的话 很需要注意
比如说这样一个场景,我收入10元钱 要将这10元钱平均分给n个人
我们就需要考虑这个n=3的情况
或是抛异常
或是
//保留2位小数
double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();

这个问题虽小,但是如果放入到一个不能停机的系统当中 这个问题就特别大啦!!!
                                                [size=13.000000pt]

                                       
                               
                       
               
       

作者: peiyanda    时间: 2016-1-6 23:00
最近又涨了不少经验和知识,有空再来发




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2