在Java中浮点数包括基本型float、double,以及对象包装类型的Float和Double,对于这些浮点数的输出,不管是显式地还是隐式地调用toString()得到它的表示字串,输出格式都是按照如下规则进行的:
如果绝对值大于0.001、小于10000000,那么就以常规的小数形式表示
如果在上述范围之外,则使用科学计数法表示。即类似于1.234E8的形式清楚这些,就可以避免一些问题,另外,对于大多数的企业应用,用户更倾向于使用普通的小数表示形式,而不是科学计数法的表示形式,所以,在实际项目中也经常会遇到需要把Java中浮点数默认的表示形式统一为普通小数形式输出的问题,可以使用java.text.DecimalFormat进行转换,比如,把double型的转换为保留4位小数点输出:DecimalFormat df = new DecimalFormat("#.0000");
double d = 12345678.12345;
String dStr = df.format(d);
这样dStr就变成了:1234567.1234,而不会是:1.234567812345E7 的形式了。
如果绝对值大于0.001、小于10000000,那么就以常规的小数形式表示
如果在上述范围之外,则使用科学计数法表示。即类似于1.234E8的形式清楚这些,就可以避免一些问题,另外,对于大多数的企业应用,用户更倾向于使用普通的小数表示形式,而不是科学计数法的表示形式,所以,在实际项目中也经常会遇到需要把Java中浮点数默认的表示形式统一为普通小数形式输出的问题,可以使用java.text.DecimalFormat进行转换,比如,把double型的转换为保留4位小数点输出:DecimalFormat df = new DecimalFormat("#.0000");
double d = 12345678.12345;
String dStr = df.format(d);
这样dStr就变成了:1234567.1234,而不会是:1.234567812345E7 的形式了。
解决方案 »
- hibernate 多表关联查询 HQL 查询语句?
- 怎么把字符串内的子字符串替换掉?
- java.lang.ClassCastException: java.lang.String cannot be cast to common.User
- 为什么显示提示脚本错误
- struts2 如何实现action返回时在指定的框架中打开页面
- spring标签库中bind标签有疑问,望解。
- web services 接口一般怎么理解.谢谢!
- tomcat5.0连接池问题,得到的连接总是为null,郁闷,请高人指点
- 碰到个奇怪的问题了,用JDBC插入一笔记录到数据库,本来是生成一笔记录的,但是实际结果总是多几笔相同的记录,
- 我在使用struts框架,谁有Validator页面验证的服务器和客户端代码?以及这方面的电子书和教程,谢谢啊
- 如何做一个像BTchina那样,鼠标移过去就显示出数据库中的数据和图片的效果?
- 疯了!!!jfreechart在struts中无法显示图像。
<fmt:formatNumber value="12343.1415926" pattern="###,###.00" />
ww自己可能也有格式化number的标签吧。