Java StrictMath nextAfter()方法

java.lang.StrictMath.nextAfter(float start, double direction) 方法返回第二个参数的方向相邻的第一个参数的浮点数。如果两个参数的比较结果相等,那么相当于第二个参数的值返回。它包括以下情况:

  • 如果任一参数为NaN,则返回NaN。
  • 如果这两个参数为有符号的零值,方向返回不变。
  • 如果start为±Float.MIN_VALUE和方向的值,这样的结果应该有一个更小的幅度,用零为起点返回相同的符号。
  • 如果开始是无限的和方向的值使得该结果应具有较小的幅度,Float.MAX_VALUE用start相同的符号返回。
  • 如果start等于±Float.MAX_VALUE和方向的值,这样的结果应该有一个更大的幅度,以作为start则返回相同符号的无穷大。

1 语法

public static float nextAfter(float start, double direction)

2 参数

start : 这是开始的浮点值

direction : 这个值表示其相邻或开始上将被返回

3 返回值

此方法返回沿开始方向上相邻的浮点数。

4 示例 

package com.yiidian;

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

public class StrictMathDemo {

  public static void main(String[] args) {
  
    float f1 = 90.2f, f2 = 0.0f;
       
    /* returns the floating-point number adjacent to the first argument in the
    direction of the second argument */  
    float retval = StrictMath.nextAfter(f1, 9.2d);
    System.out.println("NextAfter = " + retval);

    /* returns the floating-point number adjacent to the first argument in the
    direction of the second argument */
    retval = StrictMath.nextAfter(f2, 9.2d);
    System.out.println("NextAfter = " + retval);

    // returns 0 if both arguments is zero
    retval = StrictMath.nextAfter(f2, 0.0d);
    System.out.println("NextAfter = " + retval);
  }
}

输出结果为:

NextAfter = 90.19999
NextAfter = 1.4E-45
NextAfter = 0.0

 

热门文章

优秀文章