java 浮点型数据做加减乘除

来源:互联网 发布:windows程序闪退日志 编辑:程序博客网 时间:2024/05/22 08:01

今天做的项目中有个1-0.9的操作,我期望的结果是0.1,但是用double或者float相减都得到是0.1000024类似于这样的数字,于是就在网上找了资料,解决了,就自己总结了一下:

BigDecimal可以将int,long,double,string一些类型的数据直接转型

BigDecimal num1= new BigDecimal("1"); BigDecimal num2= new BigDecimal("0.9"); //减法subtract()BigDecimal  num3=num1.subtract(num2);//加法 add()BigDecimal  num4=num1.add(num2);//乘法 multiply()BigDecimal  num5=num1.multiply(num2);//除法 div()BigDecimal  num6=num1.divide(num2);//将BigDecimal  类型转成doubledouble dou=num6.doubleValue();//小数点取2位String we = num6.setScale(2,BigDecimal.ROUND_HALF_UP).toString();





原创粉丝点击