java.math.BigInteger.shiftRight(int n)%uA0返回一个BigInteger,其值为(this>> n)的。符号扩展执行。移位距离,正,可能为负,在这种情况下,这个方法执行左移。它计算方法为 floor(this / 2n).
声明
以下是java.math.BigInteger.shiftRight()方法声明
public BigInteger shiftRight(int n)
参数
-
n%uA0- 移动距离,以比特位形式。
返回值
该方法返回一个BigInteger对象的值是 this >> n .
异常
-
ArithmeticException%uA0- 如果移位距离为 Integer.MIN_VALUE
例子
下面的例子显示math.BigInteger.shiftRight()方法的用法
package com.yiibai import java.math.* public class BigIntegerDemo { public static void main(String[] args) { // create 3 BigInteger objects BigInteger bi1, bi2, bi3 bi1 = new BigInteger("4") // perform right shift operation on bi1 using 2 and -2 bi2 = bi1.shiftRight(2) bi3 = bi1.shiftRight(-2) String str1 = "Right shift on " +bi1+ ", 2 times gives " +bi2 String str2 = "Right shift on " +bi1+ ", -2 times gives " +bi3 // print bi2, bi3 values System.out.println( str1 ) System.out.println( str2 ) } }
让我们编译和运行上面的程序,这将产生以下结果:
Right shift on 4, 2 times gives 1 Right shift on 4, -2 times gives 16