NaN,无穷大 - 1

“嗨,阿米戈!”

“今天我要告诉你Java中一些有趣的事情。”

无穷大。”

在 Java 中,double类型具有正无穷大负无穷大的特殊值。正数除以 0.0 得到正无穷大,负数除以 0.0 得到负无穷大

这些概念由特殊的 Double 常量表示:

代码 描述
public static final double POSITIVE_INFINITY = 1.0 / 0.0;
正无穷大
public static final double NEGATIVE_INFINITY = -1.0 / 0.0;
负无穷大

“那真的有用吗?”

“是的。看看这个:”

代码
double inf = Double.POSITIVE_INFINITY;
System.out.println(inf); // Infinity
System.out.println(inf + 1); // Infinity+1 == Infinity
System.out.println(inf + 10); // Infinity+10 == Infinity
System.out.println(inf * -1); // Equal to negative infinity
Double.NEGATIVE_INFINITY
屏幕输出:
Infinity
Infinity
Infinity
-Infinity

“它确实有效。如果我们有歧义?例如,如果我们从无穷大中减去无穷大?”

“为此,Java 有另一个概念:非数字 ( NaN )。”

“它用于各种情况:”

1) 字符串正在转换为数字,但它包含字母。结果是 NaN。

2)无穷大减去无穷大。结果是 NaN。

3)许多其他情况下我们期望一个数字,但我们最终得到一些未定义的东西。

“那么,您可以使用 Infinity 和 NaN 执行哪些操作?”

“使用 NaN 非常简单。任何涉及 NaN 的运算都会导致 NaN。”

“有了无限,您可以执行以下操作:”

表达 结果
n ÷ ±Infinity
0
±Infinity × ±Infinity
±无穷大
±(something other than zero) ÷ 0
±无穷大
Infinity + Infinity
无穷
±0 ÷ ±0
钠盐
Infinity - Infinity
钠盐
±Infinity ÷ ±Infinity
钠盐
±Infinity × 0
钠盐

“有道理。谢谢你,Rishi。”