需要精确答案,避免使用float和double
2016-10-03 16:58
288 查看
1 float和double类型主要是为了科学计算和工程计算而设计的。它们执行二进制浮点运算,这是为了在广泛的数值范围上提供较为精准的快速近似计算而精心设计的,然而它们并没有提供完全精准的结果,所以不应该用于需要精准结果的场合。尤其不适合用于货币计算
2 如果想让系统来记录十进制小数点,并且不介意因为不使用基本类型带来的不便,应该使用BigDecimal。
3 如果性能非常关键,并且不介意自己记录十进制小数点,而且所设计的数值又不会很大,可以是int或者long。如果数值范围没有超过9位十进制数字,可以使用int;如果不超过18位数字,可以使用long。如果超过18位,就必须使用BigDecimal。
2 如果想让系统来记录十进制小数点,并且不介意因为不使用基本类型带来的不便,应该使用BigDecimal。
3 如果性能非常关键,并且不介意自己记录十进制小数点,而且所设计的数值又不会很大,可以是int或者long。如果数值范围没有超过9位十进制数字,可以使用int;如果不超过18位数字,可以使用long。如果超过18位,就必须使用BigDecimal。
相关文章推荐
- 如果需要精确答案,请避免使用float和double
- Java:Effective Java 学习笔记(第48条:如果需要精确的答案,请避免使用float和double)
- 表达式之谜2找零时刻(需要精确答案的地方,避免使用float和double;货币运算使用int,long或BigDecimal)
- 第四十八条:如果需要精确的答案,请避免使用float和double
- 《effective java》48—如果需要精确的答案,请避免使用float和double
- 第48条:如果需要精确的答案,请避免使用float和double
- 第48条:如果需要精确的答案,请避免使用float和double
- 如果要求精确的答案,请避免使用float和double
- Effective Java(2nd Edition) Item 48 如果需要精确结果,请避免使用float与double(译文)
- 31-如果要求精确的答案,请避免使用float和double
- 如果要求精确的答案,请避免使用float和double
- Effective Java读书笔记--如果想要知道精确的答案,就要避免使用double和float
- 如果要求精确的答案,请避免使用float和double
- 精确运算避免使用float和double
- 精确运算避免使用float和double
- 天天记录 - Java 精确计算避免使用float和double
- java中不能使用float和double来表示货币等精确的值,而是用
- 什么时候需要使用Double? double、float、decimal的区别
- 金额,数值精确推荐BigDecimal,请勿使用double,float