精度陷阱

摘要: 老生长谈的问题: 2.0f-1.1f = 0.9 ; 2.0-1.1 = 0.8999999999999999 原因的话后面有空深究然后再总结,随便搜搜发现,如下暂定的结论:java语言并不是使用小数点或者十进制来表示数字,相反,它是采用分数和指数来表示,而且是使用二进制的。 0.5 = 1/20.75 = 1/2 + 1/(2^2)0.85 = 1/2 + 1/(2^2) + 1/(2^3... 阅读全文
posted @ 2012-02-16 17:39 山上明月 阅读(230) 评论(0) 推荐(0)