Java中数值较大的double类型转换为字符串时会用科学计数法显示的解决办法

时间:2023-01-21 16:14:19

java.text.NumberFormat nf = java.text.NumberFormat.getInstance();

// 不使用千分位,即展示为11672283.234,而不是11,672,283.234

nf.setGroupingUsed(false);

// 设置数的小数部分所允许的最小位数

nf.setMinimumFractionDigits(0);

// 设置数的小数部分所允许的最大位数

nf.setMaximumFractionDigits(5);



System.out.println(nf.format(nf.parse("11687337.23430").doubleValue())); // 11687337.2343
System.out.println(nf.format(nf.parse("11687337.00000").doubleValue())); // 11687337
System.out.println(nf.format(nf.parse("11687337.23000").doubleValue())); // 11687337.23