Método BigInteger clearBit() en Java

Requisito previo: Conceptos básicos de BigInteger
El método clearBit() devuelve un BigInteger que se usa para borrar una posición de bit particular en un BigInteger. El bit en el índice n de la representación binaria de BigInteger se borrará y se convertirá a cero. Matemáticamente podemos decir que se usa para calcular este & ~(1<<n).
Sintaxis: 
 

public BigInteger clearBit(int n)

Parámetro: El método toma un parámetro n que se refiere al índice del bit que se necesita borrar.
Valor devuelto: el método devuelve el BigInteger después de borrar la posición de bit n.
Lanza: el método puede lanzar una ArithmeticException cuando n es negativo.
Ejemplos: 
 

Input: value = 2300, index = 3
Output: 2292
Explanation:
Binary Representation of 2300 = 100011111100
bit at index 3 is 1 so clear the bit at index 3 
Now Binary Representation becomes 100011110100
and Decimal equivalent of 100011110100 is 2292

Input: value = 5482549, index = 0
Output: 5482548

El siguiente programa ilustra el método clearBit(index) de BigInteger(). 
 

Java

/*
*Program Demonstrate clearBit() 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 = 0;
 
        // Call clearBit() method on bigInteger at index i
        // store the return BigInteger
        BigInteger changedvalue = biginteger.clearBit(i);
 
        String result = "After applying clearbit at index " +
        i + " of " + biginteger+" New Value is " + changedvalue;
 
        // Print result
        System.out.println(result);
    }
}
Producción: 

After applying clearbit at index 0 of 5482549 New Value is 5482548

 

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

Publicación traducida automáticamente

Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *