Método Java DoubleToRawLongBits

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 este laboratorio, aprenderemos cómo usar el método Double.doubleToRawLongBits() en Java para obtener la representación en bits de tipo long de un valor de tipo double. Este método es parte de la clase java.lang.Double y devuelve los bits del argumento como un long.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/ConcurrentandNetworkProgrammingGroup(["Concurrent and Network Programming"]) java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java(("Java")) -.-> java/ProgrammingTechniquesGroup(["Programming Techniques"]) java/BasicSyntaxGroup -.-> java/output("Output") java/BasicSyntaxGroup -.-> java/type_casting("Type Casting") java/ProgrammingTechniquesGroup -.-> java/method_overloading("Method Overloading") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/packages_api("Packages / API") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/wrapper_classes("Wrapper Classes") java/ConcurrentandNetworkProgrammingGroup -.-> java/working("Working") java/SystemandDataProcessingGroup -.-> java/math_methods("Math Methods") java/SystemandDataProcessingGroup -.-> java/object_methods("Object Methods") java/SystemandDataProcessingGroup -.-> java/system_methods("System Methods") subgraph Lab Skills java/output -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} java/type_casting -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} java/method_overloading -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} java/packages_api -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} java/wrapper_classes -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} java/working -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} java/math_methods -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} java/object_methods -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} java/system_methods -.-> lab-117603{{"Método Java DoubleToRawLongBits"}} end

Importa el paquete necesario

Importa el paquete java.lang.Double en tu archivo de código Java usando el siguiente código:

import java.lang.Double;

Crea un método para doubleToRawLongBits()

Crea un método que aceptará un valor de tipo double y devolverá el valor equivalente de tipo long en bits usando el método doubleToRawLongBits(). Agrega el siguiente código a tu archivo Java:

public long getLongBits(double value) {
    return Double.doubleToRawLongBits(value);
}

Usa el método

Ahora, crea algunos números de tipo double y usa el método getLongBits() para obtener sus respectivas representaciones en bits como valores de tipo long. Utiliza el siguiente código para crear e imprimir algunos números de tipo double y sus respectivas representaciones en bits de tipo long:

public static void main(String[] args) {
    DoubleToRawLongBitsDemo demo = new DoubleToRawLongBitsDemo();
    double a = 10.002;
    double b = -60.123456789;
    double c = 0.12345;
    System.out.println("Double a = " + a);
    System.out.println("Double a en binario = " + Long.toBinaryString(demo.getLongBits(a)));
    System.out.println("\nDouble b = " + b);
    System.out.println("Double b en binario = " + Long.toBinaryString(demo.getLongBits(b)));
    System.out.println("\nDouble c = " + c);
    System.out.println("Double c en binario = " + Long.toBinaryString(demo.getLongBits(c)));
}

Compila y ejecuta el programa

Guarda el archivo Java y compílalo usando el siguiente comando en tu terminal:

javac DoubleToRawLongBitsDemo.java

Ahora, ejecuta el archivo de bytecode usando el siguiente comando:

java DoubleToRawLongBitsDemo

Entiende la salida

La salida del programa debería ser algo así:

Double a = 10.002
Double a en binario = 0100000000010010001100110011001100110011001100110011001100110011

Double b = -60.123456789
Double b en binario = 1100000001011111010110011011010100001110010100010100001111000110

Double c = 0.12345
Double c en binario = 0011111110110001010010100011110101110000111101011100001010100000

Aquí, podemos ver que el método getLongBits() devuelve la representación en bits de tipo long de una entrada de tipo double dada. Hemos utilizado el método Long.toBinaryString() para convertir el valor de tipo long a su representación binaria.

Resumen

En este laboratorio, aprendimos cómo usar el método Double.doubleToRawLongBits() en Java para devolver la representación en bits de tipo long de un valor de tipo double. Hemos creado un programa Java que acepta un valor de tipo double y devuelve su respectiva representación en bits de tipo long. También hemos utilizado el método Long.toBinaryString() para convertir el valor de tipo long a su representación binaria.