Negocio

Como converter String em Int em Java – Método ParseInt

Convertendo uma String em um Int

Às vezes, precisamos trabalhar com strings numéricas como se fossem números. Por exemplo, um objeto String pode conter um valor inteiro e talvez seja necessário trabalhar com ele como um inteiro. Para esta tarefa, temos a função parseInt () .

String q = nova String ("17"); 
int r = Integer.parseInt (q);
System.out.println (r);

O método parseInt também pode aceitar um segundo parâmetro. É chamado de raiz e indica a base numérica do valor. Se você tiver uma string binária, octal ou hexadecimal, poderá obter o valor decimal desse número.

Os números básicos são os seguintes:

  • Binário = 2
  • Octal = 8
  • Decimal = 10
  • Hexadecimal = 16

Vamos dar uma olhada em um exemplo simples. Os números hexadecimais têm base 16 e os números válidos começam entre 0 e F (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F). Portanto, o valor de F deve ser 15. Para indicar o número hexadecimal, passamos 16 para parseInt:

String q = nova String ("F"); 
int r = Integer.parseInt (q, 16);
System.out.println (r);

A saída prova nossa suposição:

Saída Java Radix - hex

Se você trabalhou com HTML, notou que todas as cores têm um valor hexadecimal. Por exemplo, #FFFFFF é branco. Então, qual seria o valor inteiro da cor 66ffcc? Vamos usar o parseInt para descobrir!

String q = nova String ("66ffcc"); 
int r = Integer.parseInt (q, 16);
System.out.println ("O valor inteiro da cor" + q + "é" r);

A saída do código é:

Saída de cor raiz de parseint Java

Verificação de erros

Estamos trabalhando com inteiros e Strings, o que pode dar errado? Na verdade, várias coisas podem acontecer durante a conversão. Isso pode resultar em erros durante a execução do programa.

String minhaString = newString ("olá"); 
int makeNumber = Integer.parseInt (myString);
System.out.println (makeNumber);

Para capturar as exceções, coloque a função parseInt em um bloco try e catch. O código que você deseja executar está dentro da instrução try. Após a instrução catch, você pode exibir um erro caso a conversão falhe. Como estamos tentando converter um número não numérico em numérico, a exceção será uma NumberFormatException no compilador Java.

O código para envolver a função pareseInt () em um bloco try e catch está abaixo:

String minhaString = newString ("olá"); 
tente {
  int makeNumber = Integer.parseInt (myString);
  System.out.println (makeNumber);
} catch (NumberFormatexception e) {
  System.out.println ("Isso não era um número!");
}

Quando o código é executado, ele percebe que a String não contém números e, portanto, a instrução catch é executada. Em seguida, a seguinte saída é exibida desde que a exceção foi capturada.

Código de análise Java com saída de erros

Resumo da lição

A função parseInt () é usada para converter um valor String em um valor inteiro. O valor da String deve ser um número inteiro. É importante que o valor da String seja realmente numérico, ou o código falhará. ParseInt () pode aceitar um segundo parâmetro, chamado de raiz , que tratará o primeiro número como binário, octal ou hexadecimal (um valor hexadecimal de F retornaria um 15). Para garantir que parseInt () seja concluído, coloque o código em um bloco try e catch.