Android :关于小数相加出现很多位的 BigDecimal 也会有时不靠谱原因
来源:互联网 发布:java中的多态 编辑:程序博客网 时间:2024/05/22 04:58
BigDecimal
BigDecimal bigDecimal1= new BigDecimal(0.0);BigDecimal bigDecimal2= new BigDecimal(1.001);BigDecimal bigDecimal3= new BigDecimal("0.0");BigDecimal bigDecimal4= new BigDecimal("1.001");for (int i = 0; i <5; i++) {bigDecimal1 = bigDecimal1.add(bigDecimal2);System.out.println(bigDecimal1);}System.out.println("---------------------------");for (int i = 0; i <5; i++) {bigDecimal3 = bigDecimal3.add(bigDecimal4);System.out.println(bigDecimal3);}
输出结果:
1.000999999999999889865875957184471189975738525390625
2.001999999999999779731751914368942379951477050781250
3.002999999999999669597627871553413569927215576171875
4.003999999999999559463503828737884759902954101562500
5.004999999999999449329379785922355949878692626953125
---------------------------
1.001
2.002
3.003
4.004
5.005
可以明显看出
bigDecimal1 不正常 <pre name="code" class="java">bigDecimal3 正常就是当我们相加的时候 最好new BigDecimal(字符串)
0 0
- Android :关于小数相加出现很多位的 BigDecimal 也会有时不靠谱原因
- double类型 大量数据相乘相加会很多位小数
- js 小数相加出现很多小数位
- eclipse指定-vm 运行时,有时会出现命令窗口的原因
- 关于double 相加时出现的多位
- 你的记忆为什么会不靠谱?
- javascript关于小数计算的结果会出现小数的位数变多的现象
- java 中int转String 会出现的问题:+""不靠谱
- android volley 框架图片请求后有时会导致第一次初始化过慢的原因
- BigDecimal 保留两位小数
- JAVA BigDecimal的相加
- 关于IE的后退会出现页面过期的原因
- 关于【电脑】有时出现的问题
- 关于tomcat有时出现的ClassNotFound错误
- message 在不同的系统,有时会显示出现,有时不出现
- Java BigDecimal 解决两个double相加控制小数位数的东东
- 关于BigDecimal截取小数位数
- 6大原因导致「最安全的程序」也会出现隐患!
- Android系统Recovery工作原理之使用update.zip升级过程分析(一)---update.zip包的制作
- Android中ListView(gridview)的item中有button等子点击控件时不能响应点击事件的原因
- php中mysql_real_escape_string+sprintf防止sql注入
- 如何验证远程服务器上文件是否存在
- 欧拉函数题集
- Android :关于小数相加出现很多位的 BigDecimal 也会有时不靠谱原因
- 如何取得nginx做反向代理时的真实IP?
- C++友元
- Java很容易出错的一些问题
- Java parseInt()和parseFloat()的用法
- vpnservice 详解
- Android 6.0“棉花糖”默认禁用悬浮窗口——解决方案
- Java学习之Iterator(迭代器)的一般用法
- ISO 9126质量模型:软件质量模型的6大特性和27个子特性