double精度丢失如何解决

2025-04-13 12:17:21

1、打开Eclipse,新建一个类,在里面输入如下代码:double a = 1;double b = 20.2稆糨孝汶;double c = 300.02;double result = a+b+c;System.out.println(result);将3个double类型数字进行相加。

double精度丢失如何解决

2、点击上方的【运行】按钮,开始运行程序。

double精度丢失如何解决

3、结果是【321.219999999999997】,与我们预期的结果:321.22不一样。

double精度丢失如何解决

4、这是因为double亿姣灵秀类型在进行运算时,会有精度的丢失,这时需要使用BigDecimal来处理,代码更新后如下:double a = 1;double b = 20.2;double c = 300.02;BigDecimal a1 = new BigDecimal(Double.toString(a));BigDecimal b1 = new BigDecimal(Double.toString(b));BigDecimal c1 = new BigDecimal(Double.toString(c));double result = (a1.add(b1).add(c1)).doubleValue();System.out.println(result);

double精度丢失如何解决

5、点击上方的【运行】按钮,再次运行程序。

double精度丢失如何解决

6、结果与我们预期的结果一样,是321.22,这样就成功的解决了double的精度丢失问题。

double精度丢失如何解决
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢