Método numberOfTrailingZeros 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

En Java, el método NumberOfTrailingZeros() se utiliza para devolver el número de bits ceros siguientes al bit uno de menor orden (más a la derecha) del complemento a dos del valor entero pasado como argumento. En otras palabras, convierte el valor entero a binario y devuelve el número total de bits ceros siguientes al bit uno más bajo (más a la derecha). Esta práctica te guiará a través del proceso de uso del método NumberOfTrailingZeros() en Java.

Crea una clase Java

Crea una clase Java llamada NumberOfTrailingZerosDemo en el directorio ~/project utilizando el siguiente comando.

vi ~/project/NumberOfTrailingZerosDemo.java

Agrega código para el método NumberOfTrailingZeros()

En este paso, agregaremos el código para utilizar el método Java NumberOfTrailingZeros() en nuestra clase.

public class NumberOfTrailingZerosDemo {

    public static void main(String[] args) {
        int i = 170; // número positivo
        System.out.println("El número original es " + i);
        System.out.println("La representación binaria es = " + Integer.toBinaryString(i));
        System.out.println("El número de ceros finales es " + Integer.numberOfTrailingZeros(i));

        int j = -57; // número negativo
        System.out.println("El número original es " + j);
        System.out.println("La representación binaria es = " + Integer.toBinaryString(j));
        System.out.println("El número de ceros finales es " + Integer.numberOfTrailingZeros(j));
    }
}

Este código imprimirá el número original, su representación binaria y el número de ceros finales siguientes al bit uno de menor orden.

Compila y ejecuta la clase Java

Para compilar la clase, ejecuta el siguiente comando en la terminal.

javac NumberOfTrailingZerosDemo.java

Para ejecutar la clase compilada, se puede utilizar el siguiente comando.

java NumberOfTrailingZerosDemo

La salida del programa será la siguiente.

Original Number is 170
Binary representation is = 10101010
Number of trailing zeros is 1
Original Number is -57
Binary representation is = 11111111111111111111111111000111
Number of trailing zeros is 0

Ejemplo de entrada del usuario

A continuación, se presenta un ejemplo que permite a un usuario ingresar un número y muestra la cantidad de ceros finales.

Agrega el siguiente código a la función main():

try {
    System.out.println("Enter the number ");
    Scanner sc = new Scanner(System.in);
    int i = sc.nextInt();
    System.out.println("Binary representation is = " + Integer.toBinaryString(i));
    System.out.println("Number of trailing zeros is " + Integer.numberOfTrailingZeros(i));
} catch (Exception e) {
    System.out.println("Invalid input");
}

Compila y ejecuta la clase Java modificada

Para compilar la clase, ejecuta el siguiente comando en la terminal.

javac NumberOfTrailingZerosDemo.java

Para ejecutar la clase compilada, se puede utilizar el siguiente comando.

java NumberOfTrailingZerosDemo

La salida del programa será como sigue:

Enter the number
87
Binary representation is = 1010111
Number of trailing zeros is 0

Prueba el ejemplo en vivo

Ahora que sabes cómo funciona el método NumberOfTrailingZeros(), puedes probar un ejemplo en vivo para ver si puedes obtener una salida similar.

import java.lang.*;

public class NumberOfTrailingZerosDemo {
    public static void main(String[] args) {
            int i = 500; //2 ceros finales

            System.out.println("El número es como : "+ i);
            System.out.println("La representación binaria es = " + Integer.toBinaryString(i));
            System.out.println("El número de ceros finales es " + Integer.numberOfTrailingZeros(i));

            int j = 456; //2 ceros finales
            System.out.println("El número es como : "+ j);
            System.out.println("La representación binaria es = " + Integer.toBinaryString(j));
            System.out.println("El número de ceros finales es " + Integer.numberOfTrailingZeros(j));

            int k = -8; //3 ceros iniciales
            System.out.println("El número es como : "+ k);
            System.out.println("La representación binaria es = " + Integer.toBinaryString(k));
            System.out.println("El número de ceros detrás del bit 1 más a la derecha es " + Integer.numberOfTrailingZeros(k));
    }
}

Ejecuta el código anterior en la terminal para obtener la salida.

javac NumberOfTrailingZerosDemo.java
java NumberOfTrailingZerosDemo

que producirá la siguiente salida.

Number is like : 500
Binary representation is = 111110100
Number of trailing zeros is 2
Number is like : 456
Binary representation is = 111001000
Number of trailing zeros is 2
Number is like : -8
Binary representation is = 11111111111111111111111111111000
Number of zeros behind the rightmost 1-bit is 3

Guarda el código en GitHub

Ahora que has escrito con éxito el código para el método NumberOfTrailingZeros(), lo has guardado en el directorio ~/project/NumberOfTrailingZerosDemo.java y lo has ejecutado con éxito, es importante guardarlo en GitHub para futuras referencias. Sigue los siguientes pasos para enviar el código al repositorio de GitHub.

  1. Inicializa el directorio local como un repositorio Git.
git init
  1. Agrega los archivos a tu nuevo repositorio local. Esto los prepara para el primer commit.
git add.
  1. Confirma los archivos que has preparado en tu repositorio local.
git commit -m 'primer commit'
  1. En el símbolo del sistema, agrega la URL del repositorio remoto al que se enviará tu repositorio local.
git remote add origin <URL_REMOTA>
## Ejemplo
## git remote add origin https://github.com/user/repo.git
  1. Envía los cambios de tu repositorio local a GitHub.
git push origin master

Actualiza el código en GitHub

Para actualizar el código en GitHub, sigue los pasos siguientes.

  1. Agrega los nuevos cambios al repositorio local.
git add.
  1. Confirma los archivos que has preparado en tu repositorio local.
git commit -m'mensaje de commit'
  1. Envía los cambios de tu repositorio local a GitHub.
git push origin nombre-de-la-rama

Recuperar el código de GitHub

Para recuperar el código que has confirmado en el repositorio de GitHub, utiliza el siguiente comando.

git clone <git-repo-url>

Limpia el entorno local

Después de completar tu ejercicio, debes limpiar tu entorno eliminando el archivo.java que has creado y compilado.

rm ~/project/NumberOfTrailingZerosDemo.java
rm ~/project/NumberOfTrailingZerosDemo.class

Resumen

En este laboratorio, aprendimos cómo usar el método NumberOfTrailingZeros() en Java. También, revisamos ejemplos con diferentes números de entrada y cómo la salida cambia con diferentes entradas. También cubrimos cómo guardar el código en GitHub.