Open In App

BigInteger flipBit() Method in Java

Improve
Improve
Like Article
Like
Save
Share
Report

Prerequisite: BigInteger Basics 
The java.math.BigInteger.flipBit(index) method returns a BigInteger which is used to flip a particular bit position in a BigInteger. This method Computes (bigInteger ^ (1<<n)). The bit at index n of binary representation of the bigInteger will be flipped. That is, if the bit position is 0 it will be converted to 1 and vice versa.
Syntax: 
 

public BigInteger flipBit(int index)

Parameter:The method accepts one parameter index of integer type and refers to the position of the bit to be flipped.
Return Value: The method returns the bigInteger after flipping its bit at position index.
Throws: The method throws an ArithmeticException when the value of index is negative.
Examples: 
 

Input: value = 2300 , index = 1
Output: 2302
Explanation:
Binary Representation of 2300 = 100011111100
bit at index 1 is 0 so flip the bit at index 1 and it becomes 1. 
Now Binary Representation becomes 100011111110
and Decimal equivalent of 100011111110 is 2302

Input: value = 5482549 , index = 5
Output: 5482517

Below program illustrate flipBit(index) method of BigInteger.
 

Java




/*
*Program Demonstrate flipBit() method of BigInteger
*/
import java.math.*;
 
public class GFG {
 
    public static void main(String[] args)
    {
        // Creating  BigInteger object
        BigInteger biginteger = new BigInteger("5482549");
 
        // Creating an int i for index
        int i = 5;
 
        // Call flipBit() method on bigInteger at index i
        // store the return BigInteger
        BigInteger changedvalue = biginteger.flipBit(i);
 
        String result = "After applying flipBit at index " + i +
        " of " + biginteger+ " New Value is " + changedvalue;
 
        // Print result
        System.out.println(result);
    }
}


Output: 

After applying flipBit at index 5 of 5482549 New Value is 5482517

 

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


Last Updated : 20 Mar, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads