# BigInteger flipBit() Method in Java

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 representaion of the bigInteger will be fliped. 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 of 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 Representaion 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.

 `/* ` `*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
```

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.

My Personal Notes arrow_drop_up Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :
Practice Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.