位置:首页 > Java技术 > java.lang > java.lang.Math.scalb(float f,int scaleFactor)方法实例

java.lang.Math.scalb(float f,int scaleFactor)方法实例

java.lang.Math.scalb(float f,int scaleFactor) 返回 f x 2scaleFactor 舍入好像由一个单一的执行正确舍入的浮点乘法为double值集合的成员。请参阅Java语言规范的浮点值集的讨论。 如果结果的指数为Float.MIN_EXPONENT和Float.MAX_EXPONENT之间,答案被精确计算。如果结果的指数会比Float.MAX_EXPONENT较大,则返回无穷大。注意,如果结果是低于正常,精度可能会丢失;也就是说,当scalb(X,N)是低于正常,scalb(scalb(X,N), - N)可能不等于的X.当结果为非NaN,则结果具有相同的符号为f。

  • 如果第一个参数为NaN,则返回NaN。

  • 如果第一个参数是无限的,那么同样的符号无穷大返回。

  • 如果第一个参数为0,则返回一个零符号相同。

声明

以下是java.lang.Math.scalb()方法的声明

public static double scalb(double d, int scaleFactor)

参数

  • f -- 数由2的幂的缩放。

  • scaleFactor -- 2的幂采用指数d

返回值

此方法返回 f x 2scaleFactor

异常

  • NA

例子

下面的例子显示lang.Math.scalb()方法的使用。

package com.yiibai;

import java.lang.*;

public class MathDemo {

   public static void main(String[] args) {

      // get a x to be raised
      float x = 50.14f;
      int y = 4;

      // calculate x multiplied by 2 raised in y
      System.out.println("Math.scalb(" + x + "," + y + ")=" + Math.scalb(x, y));

   }
}

让我们来编译和运行上面的程序,这将产生以下结果:

Math.scalb(50.14f, 4)=802.24