您的位置:首页 > 其它

double数值多时系统默认科学计数法解决方法

2016-08-10 16:36 232 查看
比如

Double d = new Double("1234567890.12");
System.out.println("d:="+d);
java.text.NumberFormat nf = java.text.NumberFormat.getInstance();
nf.setGroupingUsed(false);
System.out.println("d:="+nf.format(d));


输出结果:

d:=1.23456789012E9

d:=1234567890.12


运用了:

Double value=object.getDouble("value");
java.text.NumberFormat nf = java.text.NumberFormat.getInstance();
carvalue.setText(nf.format(value)+"元");


这里输出结果还带有千分位的效果,比如输入12345600,输出12,345,600

还有一些属性,举个例子看看:

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


希望帮到大家
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐