我是靠谱客的博主 激动电源,这篇文章主要介绍java浮点运算的陷阱,现在分享给大家,希望可以做个参考。

首先呢,i你要明白double和float。

Inifinity:
例如:syso(5.0/0.0+" 和"+0.0 /0.0);


浮点运算的0.0不是真正意义上的0,而是非常接近0

所以啊一个数/一个接近0的数,结果为无穷大。而在java浮点范围内Inifinity表示无穷大。

java若要使用无穷大可以:

double i=1.0/0.0

或者:

double i=Double.POSITIVE_INFINITY

NAN:

not a number 这些值的存在是为了在出现错误条件(譬如算术溢出,给负数开平方根,除以 0 等)下,可以用浮点值集合中的数字来表示所产生的结果。

java中的NAN是这么定义的:

public static final double NaN = 0.0d / 0.0;

还有NAN与任何数比较都返回false


最后

以上就是激动电源最近收集整理的关于java浮点运算的陷阱的全部内容,更多相关java浮点运算内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(121)

评论列表共有 0 条评论

立即
投稿
返回
顶部