使用BigDecimal 将科学计数法变成普通的文本格式输出
来源:互联网 发布:dota2淘宝黑货多吗 编辑:程序博客网 时间:2024/05/20 23:35
BigDecimal是处理高精度的浮点数运算的常用的一个类
当需要将BigDecimal中保存的浮点数值打印出来,特别是在页面上显示的时候,就有可能遇到预想之外的科学技术法表示的问题。
一般直接使用 BigDecimal.toString()方法即可以完成浮点数的打印。
如:
System.out.println( new BigDecimal("10000000000").toString());
但是,toString()方法输出的字符串并不能保证不是科学计数法。
不过在日常的使用中,用toString()方法输出的就是普通的数字字符串而非科学计数法。
直接这么写:
System.out.println( new BigDecimal("100.000").toString());
程序的输出即为: 100.000
如果我们希望去除末尾多余的0,那么我们应该这么写:
System.out.println( new BigDecimal("100.000").stripTrailingZeros().toString());
其中,stripTrailingZeros()函数就是用于去除末尾多余的0的,但是此时程序的输出为: 1E+2
是科学计数法,可能并不是我们想要的。
解决的方法很简单,如果想要避免输出科学计数法的字符串,我们要用toPlainString()函数代替toString()。如:
System.out.println( new BigDecimal("100.000").stripTrailingZeros().toPlainString());
此时程序的输出就为 100
第二种方法:DecimalFormat df01 =new DecimalFormat("0");
BigDecimal bd04= new BigDecimal("-0100.00");
System.out.println(df01.format(bd04.negate()));
- 使用BigDecimal 将科学计数法变成普通的文本格式输出
- 使用BigDecimal 将科学计数法变成普通的文本格式输出
- 使用BigDecimal 将科学计数法变成普通的文本格式输出
- 使用BigDecimal 将科学计数法变成普通的文本格式输出
- BigDecimal与科学计数法的问题
- BigDecimal与科学计数法的问题
- POI获取文本单元格的数字变成科学计数法的处理方法
- 输出EXCEL报表时如何将科学计数法字段改为文本
- C#将科学计数法转换为普通数字
- 科学计数法如何转换成普通的计数方式??
- Java BigDecimal与科学计数法的问题
- Excel批量转换科学计数法为文本格式
- java使用poi处理excel防止数字变成科学计数法的形式
- 将Excel中以科学计数法显示的数值转换成真正的文本
- Java BigDecimal 不用科学计数法输出,去前导零 51Nod 1873
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方法
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方法
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方法
- c/c++ 中结构体的初始化与类的初始化的不同之处
- JSON数据反序列化(解析)
- 使用Volley框架的ImageLoader加载网络图片
- 黑马程序员-Java基础学习第十天总结
- SuperMap iServer 7C(2015) war包在Linux上的WebSphere 部署
- 使用BigDecimal 将科学计数法变成普通的文本格式输出
- UiAutomator之删除在最近运行的所有app
- Eclipse 如何导包 自学
- TCP/IP三路握手,四分组终止连接
- 为你的Archlinux Chromium安装flash插件
- 快速排序Quick sort - golang
- 高等数学图形与动画:目录
- 字符串函数实现
- 配置jdk