bigdecimal避免科学计数,bigdecimal 科学计数转普通计数

  bigdecimal避免科学计数,bigdecimal 科学计数转普通计数

  

目录

Bigdecimal科学计数问题主要是数据转换问题。Bigdecimal和科学计数法的测试截图(转字符串)

 

  今天00-1010,后台报表导出功能的数据会出现类似的小数点后八位0E-8的问题。

  

Bigdecimal科学计数问题

一行代码轻松搞定

 

  new BigDecimal(string . value of(value)))。toPlainString()

  

主要是数据转换问题

BigDecimal是处理高精度浮点运算的常用类。

 

  当需要打印存储在BigDecimal中的浮点值时,尤其是在页面上显示时,可能会出现科学技术表示上的意外问题。

  通常,可以使用BigDecimal.toString()方法直接打印浮点数。但是,toString()方法输出的字符串不能保证是科学的计数方法。

  比如直接这么写:

  system . out . println(new BigDecimal( 0.00000000000 )。toString());程序的输出结果是:

  0E-12

  这是我们不希望的结果。

  正确的写法:

  system . out . println(new BigDecimal( 0.00000000000 )。toPlainString());程序的输出结果是:

  0.000000000000

  如果我们想去掉末尾多余的0,那么我们应该这样写:

  system . out . println(new BigDecimal( 0.00000000000 )。stripTrailingZeros()。toPlainString());其中,stripTrailingZeros()函数用于去除末尾多余的零。

  程序的输出结果是:

  0

  

Bigdecimal与科学计数法(转String)问题

 

  以上个人经验,希望能给大家一个参考,也希望大家能支持盛行的IT。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: