Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

BigInteger shiftRight() Method in Java

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

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).

Syntax:

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.

Examples:

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:




// 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);
    }
}

Output:

After applying shiftRight by Shift Distance 3 on 2300 New Value is 287

Reference: https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#shiftRight(int)

My Personal Notes arrow_drop_up
Last Updated : 04 Dec, 2018
Like Article
Save Article
Similar Reads
Related Tutorials