原文出处 : 在java中,怎样把一个double数转换为字符串时,不用科学计数法表示。
经数据测试, 解决方法2只对部分比较小的浮点数有效, 而更小的浮点数依然会被转换为科学计数法, 例如
0.000000298023224经方法2转换会得到2.98023223876953125E-7,
0.00000298023224经方法2转换会得到0.00000298023223876953125,
故可靠做法为选用解决方法1 !!!
解决方法1:
//对Double类型的数字进行 格式化输出解决方法2:
//数字用BigDecimal表示,然后在输出string
package com.vincent.test;
import java.math.BigDecimal;
public class TestBigDecimal_String {
public static void main(String[] args) {
BigDecimal bigDecimal = new BigDecimal("123456789.123456789");
String result = bigDecimal.toString();
System.out.println(result);
}
}