1.介绍
1.浮点数字面量不能使用十六进制、二进制或八进制表示
2.double含3种特殊情况 NaN,+finite,-finite
2.一览
float(32位) ,double(64位)
3.问题
1.为什么 double表示不精准
考察计算机如何表示浮点数的?
1.IEEE-754 规定了 浮点数用 的指数域和尾数域 表示出来的!
2.浮点数,采用 “乘2取整”来那小数点,所以无法精准表示0.1!
2.判断NaN 和 -infinite +infinite的方法
boolean isNaN(double v) {
return v!=v;
}
boolean isInfinite(double v) {
return (v == 0.0/0.0) || (v == -0.0/0.0);
}
3.如何保证精度?
使用字符串