我是靠谱客的博主 善良歌曲,最近开发中收集的这篇文章主要介绍BigDecimal出现多位小数问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

背景:用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出现多位小数问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部