use*_*100 127 java double infinity
Java是否有能代表每种数值数据类型的无穷大?它是如何实现的,以便我可以用它进行数学运算?
例如
int myInf = infinity; //However it is done
myInf + 5; //returns infinity
myInf*(-1); //returns negative infinity
Run Code Online (Sandbox Code Playgroud)
我尝试使用非常大的数字,但我想要一个合适的,简单的解决方案.
Pet*_*rey 173
double 支持无限
double inf = Double.POSITIVE_INFINITY;
System.out.println(inf + 5);
System.out.println(inf - inf); // same as Double.NaN
System.out.println(inf * -1); // same as Double.NEGATIVE_INFINITY
Run Code Online (Sandbox Code Playgroud)
版画
Infinity
NaN
-Infinity
Run Code Online (Sandbox Code Playgroud)
注意:Infinity - Infinity是不是一个数字.
Joh*_*hnK 31
我假设你使用整数数学是有原因的.如果是这样,您可以通过使用类的MAX_VALUE字段获得与POSITIVE_INFINITY功能几乎相同的结果Integer:
Integer myInf = Integer.MAX_VALUE;
Run Code Online (Sandbox Code Playgroud)
(对于NEGATIVE_INFINITY,您可以使用MIN_VALUE.)当然会有一些功能上的差异,例如,当比较myInf恰好是MAX_VALUE的值时:显然这个数字不小于myInf.
还有一个库实际上有字段POSITIVE_INFINITY和NEGATIVE_INFINITY,但它们实际上只是MAX_VALUE和MIN_VALUE的新名称.
Roh*_*ain 11
要使用Infinity,您可以使用Double哪些支持Infinity: -
System.out.println(Double.POSITIVE_INFINITY);
System.out.println(Double.POSITIVE_INFINITY * -1);
System.out.println(Double.NEGATIVE_INFINITY);
System.out.println(Double.POSITIVE_INFINITY - Double.NEGATIVE_INFINITY);
System.out.println(Double.POSITIVE_INFINITY - Double.POSITIVE_INFINITY);
Run Code Online (Sandbox Code Playgroud)
输出: -
Infinity
-Infinity
-Infinity
Infinity
NaN
Run Code Online (Sandbox Code Playgroud)
小智 6
整数无穷大:
Integer maxNumber = Integer.MAX_VALUE
Run Code Online (Sandbox Code Playgroud)
双无穷大
Double maxNumber = Double.MAX_VALUE;
Double positiveInf = Double.POSITIVE_INFINITY;
Double negativeInf = Double.NEGATIVE_INFINITY
Run Code Online (Sandbox Code Playgroud)
浮动无穷大
Float positiveInf = Float.POSITIVE_INFINITY;
Float negativeInf = Float.NEGATIVE_INFINITY
Float maxNumber = Float.MAX_VALUE;
Run Code Online (Sandbox Code Playgroud)
该Double和Float类型具有POSITIVE_INFINITY恒定的。
| 归档时间: |
|
| 查看次数: |
260057 次 |
| 最近记录: |