我是靠谱客的博主 善良歌曲,这篇文章主要介绍BigDecimal出现多位小数问题,现在分享给大家,希望可以做个参考。

背景:用bigdecimal,结果出现一大堆小数

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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出现多位小数问题内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部