Método DoubleToRawLongBits em Java

JavaBeginner
Pratique Agora

Introdução

Neste laboratório, aprenderemos como usar o método Double.doubleToRawLongBits() em Java para obter a representação em bits long de um valor double. Este método faz parte da classe java.lang.Double e retorna os bits do argumento como um long.

Importar o pacote necessário

Importe o pacote java.lang.Double no seu arquivo de código Java usando o seguinte código:

import java.lang.Double;

Criar um método para doubleToRawLongBits()

Crie um método que aceitará um valor double e retornará o valor long equivalente em bits usando o método doubleToRawLongBits(). Adicione o seguinte código ao seu arquivo Java:

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

Usar o método

Agora, crie alguns números double e use o método getLongBits() para obter suas respectivas representações em bits como valores long. Use o seguinte código para criar e imprimir alguns números double e suas respectivas representações long em bits:

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 in binary = " + Long.toBinaryString(demo.getLongBits(a)));
    System.out.println("\nDouble b = " + b);
    System.out.println("Double b in binary = " + Long.toBinaryString(demo.getLongBits(b)));
    System.out.println("\nDouble c = " + c);
    System.out.println("Double c in binary = " + Long.toBinaryString(demo.getLongBits(c)));
}

Compilar e executar o programa

Salve o arquivo Java e compile-o usando o seguinte comando no seu terminal:

javac DoubleToRawLongBitsDemo.java

Agora, execute o arquivo bytecode usando o seguinte comando:

java DoubleToRawLongBitsDemo

Entender a saída

A saída do programa deve ser algo como isto:

Double a = 10.002
Double a in binary = 0100000000010010001100110011001100110011001100110011001100110011

Double b = -60.123456789
Double b in binary = 1100000001011111010110011011010100001110010100010100001111000110

Double c = 0.12345
Double c in binary = 0011111110110001010010100011110101110000111101011100001010100000

Aqui, podemos ver que o método getLongBits() retorna a representação em bits long de uma entrada double fornecida. Usamos o método Long.toBinaryString() para converter o valor long em sua representação binária.

Resumo

Neste laboratório, aprendemos como usar o método Double.doubleToRawLongBits() em Java para retornar a representação em bits long de um valor double. Criamos um programa Java que aceita um valor double e retorna sua respectiva representação em bits long. Também usamos o método Long.toBinaryString() para converter o valor long em sua representação binária.