先決條件:BigInteger基礎
java.math.BigInteger.shiftRight(int n)方法返回一個BigInteger,其值為(this >> n)。移位距離n可以為負,在這種情況下,此方法執行左移。 shiftRight()方法會將數字的二進製表示形式中的每個數字右移n次,並且將移位方向的最後一位替換為0。此shiftRight()方法計算底數(this /2^n)。
用法:
public BigInteger shiftRight(int n)
參數:該方法采用整數類型的一個參數n,該參數n以位為單位。
返回值:該方法將位右移n次後返回BigInteger。
異常:如果移位距離為Integer.MIN_VALUE,則該方法可能會引發ArithmeticException。
例子:
Input: BigInteger = 2300, n = 3 Output: 287 Explanation: Binary Representation of 2300 = 100011111100 Shift distance, n = 3. After shifting 100011111100 right 3 times, Binary Representation becomes 100011111 and Decimal equivalent of 100011111 is 287. Input: BigInteger = 35000, n = 5 Output: 1093
以下示例程序旨在說明BigInteger的shiftRight(index)方法:
// Program to demonstrate shiftRight()
// method of BigInteger
import java.math.*;
public class GFG {
public static void main(String[] args)
{
// Create BigInteger object
BigInteger biginteger = new BigInteger("2300");
// Create a int i for Shift Distance
int i = 3;
// Call shiftRight() method on bigInteger at index i
// store the return value as BigInteger
BigInteger changedvalue = biginteger.shiftRight(i);
String result = "After applying shiftRight by Shift Distance " + i +
" on " + biginteger + " New Value is " + changedvalue;
// Print result
System.out.println(result);
}
}
輸出:
After applying shiftRight by Shift Distance 3 on 2300 New Value is 287
參考: https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#shiftRight(int)
相關用法
- Java BigInteger xor()用法及代碼示例
- Java BigInteger or()用法及代碼示例
- Java BigInteger mod()用法及代碼示例
- Java BigInteger abs()用法及代碼示例
- Java BigInteger not()用法及代碼示例
- Java BigInteger pow()用法及代碼示例
- Java BigInteger and()用法及代碼示例
- Java BigInteger add()用法及代碼示例
- Java BigInteger modPow()用法及代碼示例
- Java BigInteger longValue()用法及代碼示例
- Java BigInteger hashCode()用法及代碼示例
- Java BigInteger getLowestSetBit()用法及代碼示例
- Java BigInteger floatValue()用法及代碼示例
- Java BigInteger testBit()用法及代碼示例
- Java BigInteger compareTo()用法及代碼示例
注:本文由純淨天空篩選整理自AmanSingh2210大神的英文原創作品 BigInteger shiftRight() Method in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。