Java.lang.StrictMath.ulp() 方法
描述
java.lang.StrictMath.ulp(double d) 方法返回参数的 ulp 的大小。 双精度值的 ulp 是该浮点值与幅度下一个更大的双精度值之间的正距离。 对于非 NaN x,ulp(-x) == ulp(x)。包括这些情况 −
- 如果参数为 NaN,则结果为 NaN。
- 如果参数为正无穷或负无穷,则结果为正无穷。
- 如果参数为正零或负零,则结果为 Double.MIN_VALUE。
- 如果参数是 ±Double.MAX_VALUE,则结果等于 2971。
声明
以下是 java.lang.StrictMath.ulp() 方法的声明。
public static double ulp(double d)
参数
d − 这是要返回 ulp 的浮点值。
返回值
此方法返回参数的 ulp 的大小。
异常
NA
示例
下面的例子展示了 java.lang.StrictMath.ulp() 方法的使用。
package com.tutorialspoint;
import java.lang.*;
public class StrictMathDemo {
public static void main(String[] args) {
double d1 = 5.5 , d2 = -2.9, d3 = 0.0;
// returns the size of an ulp of the argument
double ulpValue = StrictMath.ulp(d1);
System.out.println("Size of ulp of " + d1 + " = " + ulpValue);
ulpValue = StrictMath.ulp(d2);
System.out.println("Size of ulp of " + d2 + " = " + ulpValue);
ulpValue = StrictMath.ulp(d3);
System.out.println("Size of ulp of " + d3 + " = " + ulpValue);
}
}
让我们编译并运行上面的程序,这将产生下面的结果 −
Size of ulp of 5.5 = 8.881784197001252E-16 Size of ulp of -2.9 = 4.440892098500626E-16 Size of ulp of 0.0 = 4.9E-324

