「31」Float类型易踩的坑
¶前序
最近快过年了吧,但是有很多需求要搞,,,,
突然来了个锅,被人投诉说数据统计的有问题,打开电脑一看,float类型的统计,「我慌了,float在统计中一直都很头疼。」
¶触发点
¶先来看问题吧「写了个例子」:
下面的结果,a应该是什么值?why?
go version go1.14.14 darwin/amd64
1 | func main() { |
¶输出结果:
NAN
¶why?「究其根源」
简单的说就是 0/0 为负无穷大,所以为 NAN.
¶如何规避?
- 提前判断分母,为0,不计算「根源解决」
- 利用math.IsNaN(xxx),选择性跳过。 「治标」
¶拓展:
¶下面这个输出什么?
1 | func main() { |
¶输出结果:
division by zero
¶why?
- 除数不能为0.
¶关于float类型
1 | 这么简单,估计会被说很菜,,,, |
¶END
快过年了,提前预祝大家新年快乐。。。。
🧨🧨🧨🧨🧨🧨🧨🧨🧨🧨🧨🧨🧨🧨🧨