📜  Java中的 StrictMath scalb() 方法

📅  最后修改于: 2022-05-13 01:55:11.030000             🧑  作者: Mango

Java中的 StrictMath scalb() 方法

  1. scalb( double num, int scale )是Java中 StrictMath 类的内置方法,用于计算num * 2^比例并通过单个正确舍入的浮点乘以 double 值参数的成员进行舍入。
    • 当结果的指数在Double.MIN_EXPONENTDouble.MAX_EXPONENT之间时,结果计算准确。
    • 当结果的指数大于Double.MAX_EXPONENT时返回无穷大。
    • 当结果低于正常值时,正确性可能会丢失,这意味着当 scalb( num, scale ) 低于正常值时,scalb(scalb( num, scale ), -scale) 可能不等于num
    • num为 NaN 时,结果为 NaN
    • num为无限时,结果是num的相同符号的无穷大
    • num为零时,结果将是相同符号的零。

    句法:

    public static double scalb(double num, int scale)

    参数:该方法接受两个参数:

    • num :这是 double 类型,指的是要按 2 的幂进行缩放的数字。
    • scalb :这是整数类型,是指用于缩放num的 2 的幂。

    返回值:该方法返回num × 2^比例

    例子 :

    Input: num = 7
           scalb = 2
    Output: 28
    

    下面的程序说明了Java.lang.StrictMath.scalb() 方法。

    // Java praogram to illustrate the
    // java.lang.StrictMath.scalb() 
    import java.lang.*;
      
    public class Geeks {
      
    public static void main(String[] args) {
      
        double num1 = 12 , num2 = -7.2, num3 = 0.0;
        int scalb = 2;
      
        double scalb_Value = StrictMath.scalb(num1, scalb); 
        System.out.println("Output = "+scalb_Value);
      
        scalb_Value = StrictMath.scalb(num2, scalb); 
        System.out.println("Output = " +scalb_Value);
      
        scalb_Value = StrictMath.scalb(num3, scalb); 
        System.out.println("Output = "+scalb_Value);
    }
    }
    
    输出:
    Output = 48.0
    Output = -28.8
    Output = 0.0
    
  2. scalb(float num, int scale)是Java中 StrictMath 类的内置方法,用于计算num * 2^比例并通过单个正确舍入的浮点乘以浮点值参数的成员进行舍入。
    • 当结果的指数在Float.MIN_EXPONENTFloat.MAX_EXPONENT之间时,结果计算准确。
    • 当结果的指数大于Float.MAX_EXPONENT时返回无穷大。
    • 当结果低于正常值时,正确性可能会丢失,这意味着当 scalb( num, scale ) 低于正常值时,scalb(scalb( num, scale ), -scale) 可能不等于num
    • num为 NaN 时,结果为 NaN
    • num为无限时,结果是num的相同符号的无穷大
    • num为零时,结果将是相同符号的零。

    句法 :

    public static float scalb(float num, int scale)

    参数:该方法接受两个参数:

    • num :这是浮点类型,是指要按 2 的幂缩放的数字。
    • scalb :这是整数类型,是指用于缩放num的 2 的幂。

    返回值:该方法返回num × 2^比例

    例子 :

    Input: num = 2.5f
           scalb = 4
    Output: 40.0
    

    下面的程序说明了Java.lang.StrictMath.scalb() 方法。

    // Java praogram to illustrate the
    // java.lang.StrictMath.scalb() 
    import java.lang.*;
      
    public class Geeks {
      
    public static void main(String[] args) {
      
        float num1 = 8.3f, num2 = -4.2f, num3 = 0.0f;
        int scalb = 3;
      
        float scalb_Value = StrictMath.scalb(num1, scalb); 
        System.out.println("Output = "+scalb_Value);
      
        scalb_Value = StrictMath.scalb(num2, scalb); 
        System.out.println("Output = " +scalb_Value);
      
        scalb_Value = StrictMath.scalb(num3, scalb); 
        System.out.println("Output = "+scalb_Value);
    }
    }
    
    输出:
    Output = 66.4
    Output = -33.6
    Output = 0.0