Método BigInteger shiftLeft() en Java

El método java.math.BigInteger.shiftLeft(int n) devuelve un BigInteger cuyo valor es (this << n). La distancia de desplazamiento, n, puede ser negativa, en cuyo caso este método realiza un desplazamiento a la derecha. El método shiftLeft() moverá cada dígito en la representación binaria de un número a la izquierda n veces y el último bit en la dirección del desplazamiento se reemplaza por 0. Este método ShiftLeft() calcula el suelo (esto * 2^n) .

Sintaxis:

public BigInteger shiftLeft(int n)

Parámetros: El método toma un parámetro n de tipo entero, que se refiere a la distancia de desplazamiento, en bits.

Valor devuelto: el método devuelve el BigInteger después de desplazar los bits a la izquierda n veces.

Excepciones: el método puede generar una ArithmeticException si la distancia de desplazamiento es Integer.MIN_VALUE.

Ejemplos:

Input: value = 2300, shift distance = 3
Output: 18400
Explanation:
Binary Representation of 2300 = 100011111100
shift distance = 3
after shifting 100011111100 left 3 times then
Binary Representation becomes 100011111100000
and Decimal equivalent of 100011111100000 is 18400.

Another way of expressing the same can be 2300*(2^3)=18400

Input: value = 35000, index = 5
Output: 1120000

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

// Program to demonstrate shiftLeft() method of BigInteger 
  
import java.math.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Creating BigInteger object
        BigInteger biginteger = new BigInteger("2300");
  
        // Creating a int i for Shift Distance
        int i = 3;
  
        // Call shiftLeft() method on bigInteger at index i
        // store the return value as BigInteger
        BigInteger changedvalue = biginteger.shiftLeft(i);
  
        String result = "After applying ShiftLeft by Shift Distance " + i
                        + " on " + biginteger + " New Value is " + changedvalue;
  
        // Printing result
        System.out.println(result);
    }
}
Producción:

After applying ShiftLeft by Shift Distance 3 on 2300 New Value is 18400

Referencia: https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#shiftLeft(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 *