Método Java Long numberOfTrailingZeros

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 numberOfTrailingZeros() devuelve el número de bits ceros siguientes al bit uno de menor orden (más a la derecha) del valor long pasado. Este método es parte de la clase Long del paquete java.lang.

Crea un nuevo archivo Java

Crea un nuevo archivo Java usando el editor nano escribiendo el siguiente comando en tu terminal:

touch ~/project/TrailingZeros.java

Escribe código Java

Agrega el siguiente código para usar el método numberOfTrailingZeros() para obtener el número de ceros finales en un valor long:

public class TrailingZeros {
    public static void main(String[] args) {
        // número positivo
        long num1 = 170L;
        System.out.println("Número original es " + num1);
        System.out.println("Representación binaria es = " + Long.toBinaryString(num1));
        System.out.println("Número de ceros finales es = " + Long.numberOfTrailingZeros(num1));

        // número negativo
        long num2 = -57L;
        System.out.println("Número original es " + num2);
        System.out.println("Representación binaria es = " + Long.toBinaryString(num2));
        System.out.println("Número de ceros finales es " + Long.numberOfTrailingZeros(num2));
    }
}

Compila y ejecuta el código

Compila el código Java usando el siguiente comando en tu terminal:

javac ~/project/TrailingZeros.java

Una vez que la compilación se complete, ejecuta el programa escribiendo el siguiente comando en tu terminal:

java TrailingZeros

La salida del programa se verá así:

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

Entrada definida por el usuario

También puedes tomar la entrada del usuario y devolver el número de ceros finales del mismo. Agrega el siguiente código para lograr el comportamiento anterior:

import java.util.Scanner;

public class TrailingZeros {
    public static void main(String[] args) {
        try {
            System.out.println("Ingrese un número: ");
            Scanner sc = new Scanner(System.in);
            long num3 = sc.nextLong();
            System.out.println("Representación binaria es = " + Long.toBinaryString(num3));
            System.out.println("Número de ceros finales es " + Long.numberOfTrailingZeros(num3));
        } catch (Exception e) {
            System.out.println("Entrada no válida");
        }
    }
}

Compila y ejecuta el código actualizado

Compila el código Java actualizado usando el siguiente comando en tu terminal:

javac ~/project/TrailingZeros.java

Una vez que la compilación se complete, ejecuta el programa actualizado escribiendo el siguiente comando en tu terminal:

java TrailingZeros

Cuando el programa te pida la entrada, escribe un valor long de tu elección y pulsa la tecla 'Enter'. El programa mostrará la representación binaria del número y el número de ceros finales.

Resumen

En este laboratorio, aprendiste cómo usar el método numberOfTrailingZeros() para devolver el número de ceros finales en un valor long pasado. También creaste un programa con entrada definida por el usuario para tomar la entrada del usuario y devolver el número de ceros finales del mismo.