java 怎么把科学记数法string转换成java对象string

Java将科学计数法数据转为字符串的实例
投稿:jingxian
字体:[ ] 类型:转载 时间:
下面小编就为大家带来一篇Java将科学计数法数据转为字符串的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
有些项目可能会涉及到从Excel导入数据,但如果Excel里单元格类型为数值,但内容数据太长时(如银行账号),导入时,会默认读取为科学计数法,用以下代码便轻松解决。
BigDecimal bd = new BigDecimal("3.E11");&
System.out.println(bd.toPlainString());
以上这篇Java将科学计数法数据转为字符串的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具7145人阅读
问题:在java中,怎样把一个double数转换为字符串时,不用科学计数法表示。
解决方法1:
对Double类型的数字进行 格式化输出 ,相对来说不是很精确
import java.text.DecimalF
public class TestDouble_String {
public static void main(String[] args) {
Double double1 = 3456789;
DecimalFormat decimalFormat = new DecimalFormat(&#,##0.00&);
System.out.println(decimalFormat.format(double1));
System.out.println(double1);
解决方法2:
数字用BigDecimal表示,然后在输出string ,相对来说更精确
import java.math.BigD
public class TestBigDecimal_String {
public static void main(String[] args) {
BigDecimal bigDecimal = new BigDecimal(Long.MAX_VALUE);
String result = bigDecimal.toString();
System.out.println(result);
所以在要求显示的值更精确时采用第二种方式,当要求值显示的更直观时采用第一种方法
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:895168次
积分:9193
积分:9193
排名:第2177名
原创:144篇
转载:49篇
评论:146条
目前两个域名均在使用:
(1)(4)(6)(1)(2)(3)(2)(3)(1)(7)(4)(3)(3)(2)(10)(19)(17)(3)(17)(13)(33)(17)(8)(3)(14)(2)
文章:10篇
阅读:43633
文章:15篇
阅读:116908
(window.slotbydup = window.slotbydup || []).push({
id: '4740887',
container: s,
size: '250,250',
display: 'inlay-fix'Java BigDecimal与科学计数法(转String)的问题 - CSDN博客
Java BigDecimal与科学计数法(转String)的问题
BigDecimal是处理高精度的浮点数运算的常用的一个类
当需要将BigDecimal中保存的浮点数值打印出来,特别是在页面上显示的时候,就有可能遇到预想之外的科学技术法表示的问题。
一般直接使用 BigDecimal.toString()方法即可以完成浮点数的打印。
&&& System.out.println( new BigDecimal(&&).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
本文已收录于以下专栏:
相关文章推荐
BigDecimal是处理高精度的浮点数运算的常用的一个类
当需要将BigDecimal中保存的浮点数值打印出来,特别是在页面上显示的时候,就有可能遇到预想之外的科学技术法表示的问题。
1.在java后台中进行转换
(1)使用BigDecimal类
double num=8.;
String str=new BigDecimal(num).toString();...
BigDecimal是处理高精度的浮点数运算的常用的一个类
当需要将BigDecimal中保存的浮点数值打印出来,特别是在页面上显示的时候,就有可能遇到预想之外的科学技术法表示的问题。
/*由数字字符串构造BigDecimal的方法 
*设置BigDecimal的小数位数的方法 
import java.math.BigD 
//数字字符串 
/*由数字字符串构造BigDecimal的方法
*设置BigDecimal的小数位数的方法
import java.math.BigD
//数字字符串
函数 toPlainString() 和 toString()
对于  BigDecimal b ;     (b=(0.4321)^ 20)
String s =...
给一个字符串1.E-10
如何得到0.8761976这个字符串呢?
我就是想和大家分享一下,谁先到先得分。
BigDecimal bd = new ...
java.math.BigDecimal.toPlainString() 返回此BigDecimal的字符串表示形式不带指数字段。为具有正的精度值,中位数的小数点右边的数字用于指示精度。
    Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更...
他的最新文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)java中将科学计数法转换普通计数法的简单方法
投稿:jingxian
字体:[ ] 类型:转载 时间:
下面小编就为大家带来一篇java中将科学计数法转换普通计数法的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
今天发现数据库里汇总的数据有点大,一输出就被自动转化成科学计数法了。后来发现是转换字符串的方法有问题。如下:
String a = "";
BigDecimal db = new BigDecimal(a);
System.out.println("科学计数:" + db.toString());
System.out.println("普通计数:" + db.toPlainString());
科学计数:1.
普通计数:
以上这篇java中将科学计数法转换普通计数法的简单方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具

我要回帖

更多关于 科学计算工作站 的文章

 

随机推荐