Doble método doubleToLongBits() en Java con ejemplos

El método java.lang.Double.doubleToLongBits() de la clase Java Double es una función integrada en Java que devuelve una representación del valor de punto flotante especificado de acuerdo con el diseño de bits de «formato doble» de punto flotante IEEE 754.

Sintaxis:

public static long doubleToLongBits(double val)

Parámetro: el método acepta solo un parámetro val que especifica un número de coma flotante de precisión doble.

Valores devueltos: la función devuelve los bits que representan el número de coma flotante. A continuación se muestran los casos especiales:

  • Si el argumento es infinito positivo , el resultado es 7ff0000000000000L .
  • Si el argumento es infinito negativo , el resultado es 0xfff0000000000000L .
  • Si el argumento es NaN , el resultado es 0x7ff8000000000000L .

Los siguientes programas ilustran el uso del método java.lang.Double.doubleToLongBits() :

Programa 1:

// Java program to demonstrate
// Double.doubleToLongBits() method
  
import java.lang.*;
  
class Gfg1 {
  
    public static void main(String args[])
    {
  
        double val = 1.5d;
  
        // function call
        long answer = Double.doubleToLongBits(val);
  
        // print
        System.out.println(val + " in long bits: "
                           + answer);
    }
}
Producción:

1.5 in long bits: 4609434218613702656

Programa 2:

// Java program to demonstrate
// Double.doubleToLongBits() method
  
import java.lang.*;
  
class Gfg1 {
  
    public static void main(String args[])
    {
  
        double val = Double.POSITIVE_INFINITY;
        double val1 = Double.NEGATIVE_INFINITY;
        double val2 = Double.NaN;
  
        // function call
        long answer = Double.doubleToLongBits(val);
  
        // print
        System.out.println(val + " in long bits: "
                           + answer);
  
        // function call
        answer = Double.doubleToLongBits(val1);
  
        // print
        System.out.println(val1 + " in long bits: "
                           + answer);
  
        // function call
        answer = Double.doubleToLongBits(val2);
  
        // print
        System.out.println(val2 + " in long bits: "
                           + answer);
    }
}
Producción:

Infinity in long bits: 9218868437227405312
-Infinity in long bits: -4503599627370496
NaN in long bits: 9221120237041090560

Referencia: https://docs.oracle.com/javase/7/docs/api/java/lang/Double.html#doubleToLongBits(doble)

Publicación traducida automáticamente

Artículo escrito por gopaldave y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *