當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Math nextAfter()用法及代碼示例


java.lang.Math.nextAfter()返回在第二個參數方向上與第一個參數相鄰的浮點數。如果兩個參數相等,則返回第二個參數。

用法:
// datatype can be float or double.
public static dataType nextAfter(dataType st, dataType dir)

參數:
st:起始浮點值。
dir:指示應返回起始鄰居或起始位置的值。


返回:
此方法返回在方向上相鄰的浮點數。

注意:

  • 如果參數之一為NaN,則輸出為NaN
  • 如果兩個參數的符號都為零,則返回的方向不變(如參數比較相等則返回第二個參數的要求)。
  • 如果start為Double.MIN_VALUE或Float.MIN_VALUE,並且direction具有一個值使得結果應具有較小的大小,則將返回一個與start具有相同符號的零。
  • 如果start為無窮大,並且direction的值應使結果的大小較小,則返回Double.MAX_VALUE或Float.MAX_VALUE,其符號與開始相同。
  • 如果start等於Double.MAX_VALUE或Float.MAX_VALUE,並且direction具有一個值,使得結果應具有較大的大小,則返回與start具有相同符號的無窮大。

範例1:展示java.lang.Math.nextAfter()方法的用法。

// Java program to demonstrate working 
// of java.lang.Math.nextAfter() method 
import java.lang.Math; 
  
class GfG { 
  
    // driver code 
    public static void main(String args[]) 
    { 
        double a = 0.0 / 0; 
        double b = 12.2; 
  
        // Input a is NaN, Output NaN 
        System.out.println(Math.nextAfter(a, b)); 
  
        double c = 0.0; 
        double d = 0.0; 
  
        // Both Input are signed zeros, Output zero 
        System.out.println(Math.nextAfter(c, d)); 
  
        float e = Float.MIN_VALUE; 
        float f = 12.2f; 
  
        System.out.println(Math.nextAfter(e, f)); 
  
        float g = 1.0f / 0f; 
        float h = 1.0f; 
  
        System.out.println(Math.nextAfter(g, h)); 
  
        double i = Double.MAX_VALUE; 
        double j = 12344.2; 
  
        System.out.println(Math.nextAfter(i, j)); 
    } 
}

輸出:

NaN
0.0
2.8E-45
3.4028235E38
1.7976931348623155E308


相關用法


注:本文由純淨天空篩選整理自Niraj_Pandey大神的英文原創作品 Java Math nextAfter() method with Example。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。