Método toHexString de Double em Java

JavaBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como usar o método toHexString() da classe Double em Java. Este método é usado para retornar a String hexadecimal absoluta equivalente do valor double passado. O valor retornado estará no formato 0xh.hhhhhhhhhhhhp+d, onde h representa um dígito hexadecimal e d representa um expoente decimal.

Criar um novo arquivo Java

Crie um novo arquivo Java chamado DoubleToHexString.java usando o seguinte comando no terminal.

touch DoubleToHexString.java

Adicionar a declaração de importação

Adicione a seguinte declaração de importação no início do arquivo Java para importar a classe java.lang.Double.

import java.lang.Double;

Usar o método toHexString()

Nesta etapa, usaremos o método toHexString() para obter a String equivalente em hexadecimal de um valor double.

public static void main(String[] args) {
    double num = -123.45;
    String hex = Double.toHexString(num);

    System.out.println("Decimal value: " + num);
    System.out.println("Hexadecimal value: " + hex);
}

No código acima, criamos uma variável double chamada num com o valor -123.45. Em seguida, usamos o método toHexString() para obter a String equivalente em hexadecimal de num. Finalmente, imprimimos ambos os valores usando o método System.out.println().

Usar o valor NaN

Nesta etapa, usaremos o método toHexString() para o valor NaN.

public static void main(String[] args) {
    double num = Double.NaN;
    String hex = Double.toHexString(num);

    System.out.println("Decimal value: " + num);
    System.out.println("Hexadecimal value: " + hex);
}

No código acima, usamos Double.NaN, que representa o valor Not-A-Number (NaN), para obter a String equivalente em hexadecimal. Como mencionado anteriormente, o valor "NaN" será retornado para o valor NaN. Finalmente, imprimimos ambos os valores usando o método System.out.println().

Entrada do usuário

Nesta etapa, obteremos a entrada do usuário e, em seguida, usaremos o método toHexString() para obter a String equivalente em hexadecimal do valor de entrada.

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);

    System.out.print("Enter a decimal value: ");
    double num = sc.nextDouble();

    String hex = Double.toHexString(num);

    System.out.println("Decimal value: " + num);
    System.out.println("Hexadecimal value: " + hex);
}

No código acima, usamos a classe Scanner para obter o valor de entrada do usuário. Em seguida, usamos toHexString() para obter a String equivalente em hexadecimal do valor de entrada. Finalmente, imprimimos ambos os valores usando o método System.out.println().

Compilar e executar o código

Compile o código usando o seguinte comando:

javac DoubleToHexString.java

Execute o código usando o seguinte comando:

java DoubleToHexString

Você verá uma saída semelhante a esta:

Enter a decimal value: 123.45
Decimal value: 123.45
Hexadecimal value: 0x1.edd2f1a9fbe77p6

Resumo

Neste laboratório, você aprendeu como usar o método toHexString() da classe Double para obter a String equivalente em hexadecimal de um valor double fornecido. Você também aprendeu como lidar com o valor NaN usando este método.