概述
背景:用bigdecimal,结果出现一大堆小数
public static void bigDcimalDot() {
System.out.println(new BigDecimal(3.1415926));
//打印结果:3.14159260000000006840537025709636509418487548828125
System.out.println(new BigDecimal("3.1415926"));
//打印结果:3.1415926
//描述:double转为Bigdecimal,位数过多转换时变为科学计数法,容易出现精度丢失现象
//解决方案:如下方法先转为字符串再转为BigDecimal
System.out.println(new BigDecimal(3.1415926).setScale(7,BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString());
//打印结果:3.1415926
}
最后
以上就是善良歌曲为你收集整理的BigDecimal出现多位小数问题的全部内容,希望文章能够帮你解决BigDecimal出现多位小数问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复