Java StrictMath ulp()方法

java.lang.StrictMath.ulp(float f) 方法返回参数的ulp的大小。float值的ulp是该浮点值和浮点值下一个数值较大的正距离。请注意,对于非NaN x, ulp(-x) == ulp(x)。它包括以下情况:

  • 如果参数为NaN,那么结果为NaN。
  • 如果参数为正或负无穷大,那么结果为正无穷大。
  • 如果参数为正或负0,那么结果是Float.MIN_VALUE。
  • 如果参数为±Float.MAX_VALUE,那么结果等于 2104.

1 语法

public static float ulp(float f)

2 参数

f : 这是要返回浮点的ulp值。

3 返回值

此方法返回参数的ulp的大小。

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java StrictMath ulp()方法
 */
import java.lang.*;

public class StrictMathDemo {

  public static void main(String[] args) {
  
    float f1 = 3.71f , f2 = -4.3f, f3 = 0.0f;

    // returns the size of an ulp of the argument      
    float ulpValue = StrictMath.ulp(f1); 
    System.out.println("Size of ulp of " + f1 + " : " + ulpValue);
        
    ulpValue = StrictMath.ulp(f2); 
    System.out.println("Size of ulp of " + f2 + " : " + ulpValue);
        
    ulpValue = StrictMath.ulp(f3); 
    System.out.println("Size of ulp of " + f3 + " : " + ulpValue);
  }
}

输出结果为:

Size of ulp of 3.71 = 2.3841858E-7
Size of ulp of -4.3 = 4.7683716E-7
Size of ulp of 0.0 = 1.4E-45

 

热门文章

优秀文章