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.
- Inicializa el directorio local como un repositorio Git.
git init
- Agrega los archivos a tu nuevo repositorio local. Esto los prepara para el primer commit.
git add.
- Confirma los archivos que has preparado en tu repositorio local.
git commit -m 'primer commit'
- 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
- 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.
- Agrega los nuevos cambios al repositorio local.
git add.
- Confirma los archivos que has preparado en tu repositorio local.
git commit -m'mensaje de commit'
- Envía los cambios de tu repositorio local a GitHub.
git push origin nombre-de-la-rama
Recuperando 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.



