对于浮点数中用科学计数法中带有的e怎么去掉啊 比如3.456785E-8,我想不用科学技术发,把他表示成0.000456785,这样的形式怎么解决啊,我用了DecimalFormat进行格式化,但是他格式化的部分是前面的3.456785,还是没有去掉e 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 首先明确一点,double不存在格式问题,比如带e和不带e只是double的表示方法问题,对于数值的大小没用影响。如果你要去掉e那么只有将这个double转成String,因为String有格式一说。示意代码如下,具体需要多少位小数和多大的范围,你自己决定。DecimalFormat df = new DecimalFormat("#,###.##"); String strValue = df.format(doubleValue); 如果你想进行这样的格式化,恐怕在double的精度范围内做不到啊。 看看java.text 类 DecimalFormatjava.lang.Object java.text.Format java.text.NumberFormat java.text.DecimalFormat科学计数法科学计数法中的数表示为一个尾数和一个 10 的几次幂的乘积,例如可将 1234 表示为 1.234 x 10^3。尾数的范围通常是 1.0 <= x < 10.0,但并非必需如此。可指示 DecimalFormat 仅通过某个模式 来格式化和解析科学计数法表示的数;目前没有创建科学计数法格式的工厂方法。在这个模式中,指数字符后面紧跟着一个或多个数字字符即指示科学计数法。示例:"0.###E0" 将数字 1234 格式化为 "1.234E3"。 指数字符后面的数字位数字符数给出了最小的指数位数。没有最大值。使用本地化的减号来格式化负数指数,不 使用模式中的前缀和后缀。这就允许存在诸如 "0.###E0 m/s" 等此类的模式最小和最大整数数字位数一起进行解释: 如果最大整数数字位数大于其最小整数数字位数并且大于 1,则强制要求指数为最大整数数字位数的倍数,并将最小整数数字位数解释为 1。最常见的用法是生成工程计数法,其中指数是 3 的倍数,如 "##0.#####E0"。使用此模式时,数 12345 格式化为 "12.345E3",123456 则格式化为 "123.456E3"。 否则通过调整指数来得到最小整数数字位数。示例:使用 "00.###E0" 格式化 0.00123 时得到 "12.3E-4"。 尾数中的有效位数是最小整数 和最大小数 位数的和,不受最大整数位数的影响。例如,使用 "##0.##E0" 格式化 12345 得到 "12.3E3"。要显示所有位数,请将有效位数计数设置为零。有效位数不会影响解析。 指数模式可能不包含分组分隔符。 BigDecimal bg=new BigDecimal("3.456785E-8"); System.out.println(bg.toPlainString()); java线程问题。。 把结构体的变量名(上1000个)加入到COMBO BOX 获取程序运行路径结果不一致的问题 JAVA算法 回文字符串求教 大侠帮忙 请问LDAP中如何增加字段 怎么打印这样的符号? 大分求救:JBuilderX编译工程时,一遇到error就停止编译了,但是有不少包是没有error的,我想得到这些包编译后的class,怎么办??? 找不到符号~~ 求解!!! 结果集可回滚 关于配置rmi server?高手帮忙!!! how to find the key in HashMap in java 一个线程停止的问题
String strValue = df.format(doubleValue);
看看
java.text
类 DecimalFormat
java.lang.Object
java.text.Format
java.text.NumberFormat
java.text.DecimalFormat科学计数法
科学计数法中的数表示为一个尾数和一个 10 的几次幂的乘积,例如可将 1234 表示为 1.234 x 10^3。尾数
的范围通常是 1.0 <= x < 10.0,但并非必需如此。可指示 DecimalFormat 仅通过某个模式 来格式化和解
析科学计数法表示的数;目前没有创建科学计数法格式的工厂方法。在这个模式中,指数字符后面紧跟着一个或
多个数字字符即指示科学计数法。示例:"0.###E0" 将数字 1234 格式化为 "1.234E3"。 指数字符后面的数字位数字符数给出了最小的指数位数。没有最大值。使用本地化的减号来格式化负数指数,不 使用模式中的前缀和后缀。这就允许存在诸如 "0.###E0 m/s" 等此类的模式
最小和最大整数数字位数一起进行解释: 如果最大整数数字位数大于其最小整数数字位数并且大于 1,则强制要求指数为最大整数数字位数的倍数,并将
最小整数数字位数解释为 1。最常见的用法是生成工程计数法,其中指数是 3 的倍数,如 "##0.#####E0"。
使用此模式时,数 12345 格式化为 "12.345E3",123456 则格式化为 "123.456E3"。
否则通过调整指数来得到最小整数数字位数。示例:使用 "00.###E0" 格式化 0.00123 时得到 "12.3E-4"。
尾数中的有效位数是最小整数 和最大小数 位数的和,不受最大整数位数的影响。例如,使用 "##0.##E0" 格
式化 12345 得到 "12.3E3"。要显示所有位数,请将有效位数计数设置为零。有效位数不会影响解析。
指数模式可能不包含分组分隔符。
System.out.println(bg.toPlainString());