Java StrictMath scalb()方法
- scalb( double num, int scale )是Java中StrictMath类的一个内建方法,用于计算
num * 2^ scale
和四舍五入,正如一个正确四舍五入的浮点乘以一个成员的双倍值参数所执行的。- 当结果的指数在Double.MIN_EXPONENT和Double.MAX_EXPONENT之间时,结果被准确计算。
- 当结果的指数大于Double.MAX_EXPONENT时,将返回一个无穷大。
- 当结果为次正态时,可能会失去正确性,这意味着当scalb( num, scale )为次正态时,scalb( scalb( num, scale ), -scale )可能不等于num。
- 当num为NaN时,结果为NaN。
- 当num是无限时,结果是num的同符号的无限值
- 当num为零时,结果为num的相同符号的零。
语法:
public static double scalb(double num, int scale)
参数:该方法接受两个参数。
- num : 这是一个双数类型的参数,指的是要按2的倍数缩放的数字。
- scalb : 这是一个整数类型的参数,指的是用于缩放num的2次方。
返回值:该方法返回num×2^比例。
示例 :
输入: num = 7
scalb = 2
输出: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
- scalb(float num, int scale)是Java中StrictMath类的内置方法,用于计算
num * 2^ scale
和四舍五入,正如单个正确四舍五入的浮点乘以浮点值参数的成员所执行的。- 当结果的指数在Float.MIN_EXPONENT和Float.MAX_EXPONENT之间时,结果被准确计算。
- 当结果的指数大于Float.MAX_EXPONENT时,将返回一个无穷大。
- 当结果为亚正态时,可能会失去正确性,这意味着当scalb( num, scale )为亚正态时,scalb( scalb( num, scale ), -scale )可能不等于num。
- 当num为NaN时,结果为NaN。
- 当num是无限时,结果是num的同符号的无限值
- 当num为零时,结果为num的相同符号的零。
语法 :
public static float scalb(float num, int scale)
参数:该方法接受两个参数。
- num : 这是一个浮动类型的参数,指的是要被缩放的2次方的数字。
- scalb : 这是一个整数类型的参数,指的是用于缩放num的2次方。
返回值:该方法返回num×2^比例。
示例 :
输入: num = 2.5f
scalb = 4
输出: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