Double类型数据 初始化BigDecimal
图1.png使用Double作为参数构造BigDecimal对象,无法精确构造出对应的BigDecimal 见
图1
建议使用字符串初始化 BigDecimal对象 或者直接BigDecimal.valueOf(double)
否则初始化对象就错了 进行四舍五入的时候更是会导致数据错误 像0.85保留一位小数 就会变成0.8 而不是0.9了
前端小数相加精度问题
0.1+0.2!=0.3.png判断字符串是否可转化为数字 NumberUtils.isCreatable()
"0001" - "0007" 输出true “0008”,“0009” 输出false
原因: 0开头 会被识别为 八进制数字 故单个数字不能大于7
可转用 NumberUtils.isParsable()
网友评论