Double类型大数值科学计数法处理和每三位分割显示

Double类型大数值科学计数法处理和每三位分割显示

今天遇到个很棘手但难以解决的问题!就是关于Double显示科学计数法问题!在java中对于浮点类型的数值,一旦数值大了以后java会自动的转换成科学计数法的形式显示。这是java内置的规则。但是多数时候我们不希望显示科学计数法的数值,所以需要特殊的处理一下。

解决方法一:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/**
* java后台处理一:亲测好使
*/
public static void main(String[] args) {
DecimalFormat decimalFormat = new DecimalFormat("#.##");//数据格式化设置 #代表任意一个数值
Double d = new Double(Double.MAX_VALUE);
System.out.println(decimalFormat.format(d));
}

/**
* java后台处理二:未测试
*/

public static String formatNum(double value){
String retValue = null;
DecimalFormat df = new DecimalFormat();
df.setMinimumFractionDigits(0);
df.setMaximumFractionDigits(2);
retValue = df.format(value);
retValue = retValue.replaceAll(",", "");
return retValue;
}

解决方法二:

1
2
//使用jstl的fmt标签
<fmt:formatNumber value="${caseForm.caseBean.payinfo.paymentFee}" pattern="0.00"/>

Double类型每三位分割显示的问题:

1
2
3
4
5
6
7
8
/**
* 数值每三位一个,分割
*/
public static void main(String[] args) {
DecimalFormat decimalFormat = new DecimalFormat("#,###.##");//数据格式化设置 #代表任意一个数值
Double d = new Double(Double.MAX_VALUE);
System.out.println(decimalFormat.format(d));
}

参考文档:

http://blog.csdn.net/MyronChi/article/details/48324401

http://blog.csdn.net/evangel_z/article/details/38420917

-------------已经触及底线 感谢您的阅读-------------

本文标题:Double类型大数值科学计数法处理和每三位分割显示

文章作者:趙小傑~~

发布时间:2018年02月09日 - 00:00:00

最后更新:2019年09月16日 - 19:34:10

原始链接:https://cnsyear.com/posts/c80b09d1.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

0%