Java.math.BigInteger.shiftLeft() 方法

描述

java.math.BigInteger.shiftLeft(int n) 返回一个 BigInteger,其值为 (this << n)。 移位距离 n 可能为负数,在这种情况下,此方法执行右移。 它计算 floor(this * 2n)。


声明

以下是 java.math.BigInteger.shiftLeft() 方法的声明。

public BigInteger shiftLeft(int n)

参数

n − 移位距离,以位为单位。


返回值

此方法返回一个 BigInteger 对象,其值为 this << n.


异常

ArithmeticException − 如果移位距离为 Integer.MIN_VALUE。


示例

下面的例子展示了 math.BigInteger.shiftLeft() 方法的使用。

package com.tutorialspoint;

import java.math.*;

public class BigIntegerDemo {

   public static void main(String[] args) {

      // create 3 BigInteger objects
      BigInteger bi1, bi2, bi3;

      bi1 = new BigInteger("10");

      // perform leftshift operation on bi1 using 2 and -2
      bi2 = bi1.shiftLeft(2);
      bi3 = bi1.shiftLeft(-2);

      String str1 = "Leftshift on " + bi1 + ", 2 times gives " +bi2;
      String str2 = "Leftshift on " + bi1 + ",-2 times gives " +bi3;

      // print bi2, bi3 values
      System.out.println( str1 );
      System.out.println( str2 );
   }
}

让我们编译并运行上面的程序,这将产生下面的结果 −

Leftshift on 10, 2 times gives 40
Leftshift on 10,-2 times gives 2