java中的float double精度丢失的解决方案
来源:互联网 发布:淘宝闲鱼能小二介入 编辑:程序博客网 时间:2024/05/19 13:09
System.out.println(0.15d - 0.05d); // 0.09999999999999999
System.out.println(2.08f - 3.7f); // -1.6200001
System.out.println(13.2d * 7);//92.39999999999999
解决方案:
方案一:
BigDecimal b1 = new BigDecimal(String.valueOf(13.2d));
BigDecimal b2 = new BigDecimal(String.valueOf(7));
//add加,subtract减,multiply乘,divide除
double value = b1.multiply(b2).doubleValue();
System. out.println(value);//92.4
方案二:
private static final DecimalFormat AA = new DecimalFormat("##.00");
private static final DecimalFormat BB = new DecimalFormat("##.##");
String value1 = AA.format(13.2d * 7);
String value2 = BB.format(13.2d * 7);
System. out.println(value1);//92.40
System. out.println(value2);//92.4
方案三:
NumberFormat numberFormat = NumberFormat.getInstance();
String value = numberFormat.format(13.2d * 7);
System. out.println(value);//92.4
0 0
- java中的float double精度丢失的解决方案
- java中的float double精度丢失
- java中float/double计算丢失精度解决方案
- float、double精度丢失
- java float double为什么精度会丢失
- 关于float,double的精度丢失(一)
- 关于double,float的精度丢失(二)
- 关于float,double的精度丢失
- 关于float,double的精度丢失
- java float double精度为什么会丢失?浅谈java的浮点数精度问题
- java float double精度为什么会丢失?浅谈java的浮点数精度问题
- java float double精度为什么会丢失?浅谈java的浮点数精度问题
- 关于float和double丢失精度问题及解决方案
- java中的double和float数据精度
- [JAVA] float,double精度
- Java中float,double为什么会丢失精度。
- JAVA程序中Float和Double精度丢失问题
- JAVA程序中Float和Double精度丢失问题
- New methods of NSString in iOS6
- Java加密解密快速入门下篇【包括MD5、BASE64、DES、RSA等算法】
- Java中的==和equals区别
- 找工作的经验
- mysql 中文乱码解决方案
- java中的float double精度丢失的解决方案
- 关于网站运营和管理
- java 代码优化
- 2014年ACM-ICPC西安邀请赛 update~
- Java加密解密快速入门上篇【包括MD5、BASE64、DES、RSA等算法】
- sqlite3 判断字段是否为空
- Big Number(大整数取模)
- XMPP导入xcode提示错误:"_iconv", referenced from: _mem_cd_iconv in libidn.a(striconv.o)
- 谈Win32汇编