Método decode() do Integer em Java

JavaBeginner
Pratique Agora

Introdução

O método decode() da classe Integer em Java é usado para decodificar uma String em um valor Integer. Ele pode decodificar uma string decimal, hexadecimal ou octal, e retorna o valor inteiro do objeto Integer que a String contém. Neste laboratório, você aprenderá como usar o método decode() com a ajuda de alguns exemplos.

Entenda a sintaxe do método decode()

A sintaxe do método decode() é:

public static Integer decode(String s) throws NumberFormatException

onde:

  • s é a String a ser decodificada
  • NumberFormatException é lançado se a String não contiver um inteiro analisável.

Decodifique uma string decimal

Adicione o seguinte código no método main:

String s = "100";
Integer decoded = Integer.decode(s);
System.out.println("Decimal decoded value is:" + decoded);

Salve e execute o código usando o comando:

javac Main.java && java Main

Você obterá a seguinte saída:

Enter the string to be decoded:
100
Decoded value is:100

Isso decodificará a String "100" como um decimal e imprimirá o valor decodificado como 100.

Decodifique uma string octal

Adicione o seguinte código no método main:

String s = "017";
Integer decoded = Integer.decode(s);
System.out.println("Octal decoded value is:" + decoded);

Salve e execute o código usando o comando:

javac Main.java && java Main

Você obterá a seguinte saída:

Enter the string to be decoded:
017
Decoded value is:15

Isso decodificará a String "017" como um número octal e imprimirá o valor decodificado como 15.

Decodificar uma string hexadecimal

Adicione o seguinte código no método main:

String s = "0x18";
Integer decoded = Integer.decode(s);
System.out.println("Hexadecimal decoded value is:" + decoded);

Salve e execute o código usando o comando:

javac Main.java && java Main

Você obterá a seguinte saída:

Enter the string to be decoded:
0x18
Decoded value is:24

Isso decodificará a String "0x18" como um número hexadecimal e imprimirá o valor decodificado como 24.

Decodificar uma string hexadecimal com sinal

Adicione o seguinte código no método main:

String s = "-0x30";
Integer decoded = Integer.decode(s);
System.out.println("Signed hexadecimal decoded value is:" + decoded);

Salve e execute o código usando o comando:

javac Main.java && java Main

Você obterá a seguinte saída:

Enter the string to be decoded:
-0x30
Decoded value is:-48

Isso decodificará a String "-0x30" como um número hexadecimal com sinal e imprimirá o valor decodificado como -48.

Lidar com NumberFormatException

Adicione o seguinte código no método main:

String s = "abc";
try {
    Integer decoded = Integer.decode(s);
    System.out.println("Decoded value is:" + decoded);
} catch (NumberFormatException e) {
    System.out.println("Invalid String: " + s);
}

Salve e execute o código usando o comando:

javac Main.java && java Main

Você obterá a seguinte saída:

Enter the string to be decoded:
abc
Invalid String: abc

Isso lidará com a NumberFormatException que pode ocorrer ao decodificar uma string inválida.

Resumo

Neste laboratório, você aprendeu sobre a sintaxe, os parâmetros, o valor de retorno e o uso do método decode() da classe Integer em Java. Você também teve experiência prática com o método decode() ao decodificar strings decimais, octais e hexadecimais. Você também aprendeu como lidar com a NumberFormatException. Agora você pode usar o método decode() para decodificar strings válidas e obter valores Integer delas.