java下double相乘精度丢失问题
2016-06-25 09:40
411 查看
比如
输出: 14.000000000000002
解决方法:
输出:
14.00
14
14.0
System.out.println(0.14*100);
输出: 14.000000000000002
解决方法:
BigDecimal b = new BigDecimal(String.valueOf(0.14)); BigDecimal c = new BigDecimal(String.valueOf(100)); System.out.println(b.multiply(c)); System.out.println(b.multiply(c).intValue()); System.out.println(b.multiply(c).doubleValue());
输出:
14.00
14
14.0
相关文章推荐
- Java读取Level-1行情dbf文件极致优化(2)
- 浅谈Struts2和Servlet的不同
- JAVA成员变量与局部变量的关系
- Java并发(1)-基础概念
- Spring 4开发所依赖的最基本jar包
- Java多线程并发锁和原子操作,你真的了解吗?
- Struts2的核心和工作原理
- eclipse 打开失败 error 13
- ConcurrentLinkedQueue源码分析(基于JDK8,目前比较好的分析)
- java多线程之消费者生产者模式(一)
- JavaBean入门 - 概念和简单例子
- JavaSE复习_9 集合框架复习
- Java找不到主类引发的探究
- Java堆内存
- java 第5章 数组
- Java数据类型与MySql数据类型对照表
- Java学习-50天
- Java千百问_08JDK详解(011)_jnlp文件是什么
- Java学习-47天
- Java学习-45天