BigInteger shiftRight() Method in Java
prerequisite : BigInteger Basics
The java.math.BigInteger.shiftRight(int n) method returns a BigInteger whose value is (this >> n). The shift distance, n, may be negative, in which case this method performs a left shift. The shiftRight() method will move each digit in a number’s binary representation right by n times and the last bit in the direction of the shift is replaced by 0. This shiftRight() method Computes floor(this / 2^n).
public BigInteger shiftRight(int n)
Parameter: The method takes one parameter n of integer type which refers to the shift distance in bits.
Return Value: The method returns the BigInteger after shifting the bits to right by n times.
Exceptions: The method might throws an ArithmeticException if the shift distance is an Integer.MIN_VALUE.
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
Below program illustrates shiftRight(index) method of BigInteger:
After applying shiftRight by Shift Distance 3 on 2300 New Value is 287