Método rotateRight de Integer en Java

JavaJavaBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

El método rotateRight() es útil para realizar manipulaciones de bits en datos binarios. Específicamente, rota los dígitos binarios de un número hacia la derecha por un número especificado de bits. Esto puede ser útil para realizar operaciones bit a bit en enteros o para convertir entre números binarios y decimales. En este laboratorio, exploraremos cómo usar este método para rotar una serie de enteros diferentes y examinar los resultados.

Importar los paquetes necesarios

En este primer paso, necesitamos importar el paquete necesario para usar el método rotateRight(). Para ello, usaremos los paquetes java.lang y java.util.

import java.lang.*;
import java.util.*;

Este paquete contiene la clase Scanner que necesitamos para obtener la entrada del usuario.

Definir la clase principal

En este paso, definiremos la clase RotateRight y el método main().

public class RotateRight {
    public static void main(String[] args) {
        // Código que se agregará aquí
    }
}

Definir las variables

En este paso, definiremos las variables necesarias para nuestro programa.

public class RotateRight {
    public static void main(String[] args) {
        int n1 = 8;
        int n2 = -8;
        int val = 3;
        // Código que se agregará aquí
    }
}

Hemos definido tres variables n1, n2 y val. Estas variables se usarán para realizar operaciones de rotación de bits en pasos posteriores.

Salida del equivalente binario

En este paso, mostraremos el equivalente binario de los dos números n1 y n2 mediante el uso del método Integer.toBinaryString().

public class RotateRight {
    public static void main(String[] args) {
        int n1 = 8;
        int n2 = -8;
        int val = 3;

        System.out.println("Equivalente binario de n1: " + Integer.toBinaryString(n1));
        System.out.println("Equivalente binario de n2: " + Integer.toBinaryString(n2));
    }
}

Aquí, estamos usando el método Integer.toBinaryString() para convertir enteros al formato binario y luego los estamos imprimiendo con el método System.out.println().

Realizar la operación de rotación de bits

En este paso, usaremos el método rotateRight() para realizar las operaciones de rotación de bits.

public class RotateRight {
    public static void main(String[] args) {
        int n1 = 8;
        int n2 = -8;
        int val = 3;

        System.out.println("Equivalente binario de n1: " + Integer.toBinaryString(n1));
        for (int i = 0; i < val; i++) {
            n1 = Integer.rotateRight(n1, val);
            System.out.println(n1);
        }

        System.out.println("Equivalente binario de n2: " + Integer.toBinaryString(n2));
        for (int i = 0; i < val; i++) {
            n2 = Integer.rotateRight(n2, val);
            System.out.println(n2);
        }
    }
}

El código anterior tiene dos bucles for para realizar las operaciones de rotación de bits en ambos números. Hemos usado el método rotateRight() junto con el número a rotar y el número de posiciones a rotar.

Tomar la entrada del usuario para realizar la rotación de bits

En este paso, obtendremos la entrada del usuario a través de la línea de comandos y realizaremos operaciones de rotación de bits basadas en la entrada del usuario.

public class RotateRight {
    public static void main(String[] args) {
        try {
            System.out.println("Ingrese el valor y la distancia");
            Scanner sc = new Scanner(System.in);
            int n = sc.nextInt();
            int val = sc.nextInt();
            System.out.println("El equivalente binario es : " + Integer.toBinaryString(n));
            for (int i = 0; i < val; i++) {
                n = Integer.rotateRight(n, val);
                System.out.println(n);
            }
        } catch (Exception e) {
            System.out.println("Entrada no válida");
        }
    }
}

Aquí, hemos obtenido la entrada del usuario a través del método nextInt() del objeto sc del scanner. Luego, se realizarán las operaciones de rotación de bits de acuerdo con las entradas del usuario.

Compilar y ejecutar el programa

Para compilar y ejecutar el programa, podemos usar el siguiente comando en la terminal:

javac RotateRight.java && java RotateRight

Resumen

En este laboratorio, aprendimos cómo realizar operaciones de rotación de bits en Java usando el método Integer.rotateRight(). Comenzamos importando los paquetes necesarios, definiendo la clase principal y variables definidas por el usuario. Mostramos el equivalente binario de los números de entrada dados y luego realizamos operaciones de rotación de bits basadas en la entrada del usuario. Finalmente, compilamos y ejecutamos el programa y verificamos la salida.