BigDecimal精度等注意事项
2024-09-08 18:41:34
1.BigDecimal运算时尽量传入字符串,
反例:
BigDecimal num=new BigDecimal(75);
num.multiply(new BigDecimal(0.5)).setScale(0, RoundingMode.HALF_UP).intValue() = 38,预期38
num.multiply(new BigDecimal(0.3)).setScale(0, RoundingMode.HALF_UP).intValue() = 22,预期23
修改:
num.multiply(new BigDecimal("0.3")).setScale(0, RoundingMode.HALF_UP).intValue() = 23,符合预期
2.num.multiply()等计算方法并不会改变num值,需要使用计算后值时需要使用返回值。
最新文章
- 反射动态创建不同的Processor
- [Bhatia.Matrix Analysis.Solutions to Exercises and Problems]ExI.4.5
- Linux Kernel ‘/bcm/Bcmchar.c’本地信息泄露漏洞
- abc - zx
- UIProgressView 圆角
- DAL – RDBMS 的分区
- LoadRunner相关架构图
- RedHat安装中文支持和字体
- php中数组相关
- android代码混淆笔记
- Docker(八):Docker端口映射
- JavaScript算法实现排序
- Linux~连接windows的ftp,unzip出现的问题
- Android 控件背景选择图片还是drawable XML资源
- python第三方库------jieba库(中文分词)
- java-包装类
- 034 Maven中的dependencyManagement和dependencies区别
- layUI Tree 的使用
- 句子相似度_tf/idf
- print默认在末尾添加一个换行符,但其实也可以不用!