我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

java 中 Double 和Float

刚才遇到一个问题

Double a=300.09;
Float b=300.09f;

System.out.println(a*100);
System.out.println(b*100);

结果是:

30008.999999999
30009.0

请问为什么double计算的结果不对呢?

[url]http://www.iteye.com/problems/26677[/url]

new BigDecimal(String.valueOf(a)).multiply(new BigDecimal(String.valueOf(100)) 这是你想要的结果

精确的位不同,如果要一样要转成float的

近期文章

  • j2ee 多线程的应用?
  • 使用ehcache设置的内存是算在tomcat里吗
  • struts2 action里set了资源文件的key,页面怎么显示值
  • response.getOutputStream()用完必须关吗?
  • java算法
  • java的二进制转换问题
  • Java如何重命名zip包内的文件
  • 谁能解决化学结构式在图库中的检索功能?
  • java怎么获取远程带参数的xml文件?
  • tomcat manager status 页面中的各个参数都是什么意思啊?
  • jsp问题
  • 关于泛型的问题
  • 关于国防科技大学计算机学院研究生
  • VB程序中删除数据的时候报错,可是查看表又发现确实已经删了?
  • access表中查询最大值的问题
  • 清楚原来页面内容,新页面只有个一字
  • stringbuffer 中的capacity()函数
  • 关于IE和FireFox CSS DIV 的问题
  • 写个链表,空指针异常。不理解
  • 我这样写个链表,不知道合理不?

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华