根据 Javadoc:
public static double nextAfter(double start, double direction)
...
- 如果start等于±Double.MAX_VALUE并且direction的值使得结果应该具有更大的幅度,则返回与start相同的无穷大。
但根据 这个例子:
System.out.println(Double.MAX_VALUE);
System.out.println(Math.nextAfter(Double.MAX_VALUE, 1));
System.out.println(Math.nextAfter(Double.MAX_VALUE, 1) == Double.POSITIVE_INFINITY);
输出:
1.7976931348623157E308
1.7976931348623155E308
false
嗯?不仅不是 Double.POSITIVE_INFINITY
,实际上 小 在数量上。
...157E308
...155E308
我只是完全误读了Javadoc?