Como converter Java string em int
Se você quer converter uma Java string em int, saiba que existem duas opções simples para fazer isso: parseInt()
e valueOf()
. No entanto, ambas só funcionam se a string for composta somente por números inteiros e não exceder o intervalo de valores do tipo de dados int.
Por que converter Java string em int?
Strings em Java são concatenações que podem conter caracteres, números e caracteres especiais. Na linguagem de programação Java, os números na forma de valores inteiros são salvos como int. Se você tem uma string composta apenas por números inteiros, poderá convertê-la no tipo de dado primitivo em Java int, que é a abreviação de inteiro (integer). Existem cinco formas diferentes de se converter uma Java int em string, mas há apenas duas opções para converter Java string em int: Integer parseInt()
e Integer.valueOf()
. Explicaremos abaixo como esses métodos funcionam por meio de exemplos práticos.
Note que essa conversão só funcionará se o número em questão estiver entre -2147483648 e 2147483647. Números maiores ou menores não são representados usando o tipo de dado int.
Rápido e escalável, confie na hospedagem da IONOS, que inclui domínio grátis no primeiro ano e endereço de e-mail!
- Domínio
- SSL Wildcard
- Suporte 24 horas
Como usar Integer.parseInt()
parseInt()
é um método estático que pertence à classe Integer e retorna o valor numérico do tipo de dado complexo string na forma de um tipo de dado primitivo int. Esta é sua sintaxe:
static int parseInt(String s)
javaVamos analisar um exemplo. Primeiro, inicializamos uma string que contém somente o valor “7312”. Em seguida, convertemos Java string em int usando o método parseInt()
. Por fim, apresentamos o resultado usando o comando Java System.out.println
. O código será o seguinte:
public class Main {
public static void main(String args[]) {
String str = "7312";
int numero = Integer.parseInt(str);
System.out.println("Valor da string: " + numero);
}
}
javaEste será o resultado:
Valor da string: 7312
javaNo entanto, isso só funcionará se a string for composta exclusivamente por números inteiros. Se houver outro tipo de conteúdo, você receberá uma mensagem de erro:
public class Main {
public static void main(String args[]) {
String str = "Valor 7312";
int number = Integer.parseInt(str);
System.out.println("Valor da string: " + number);
}
}
javaEste será o erro exibido:
Exception in thread "main" java.lang.NumberFormatException: For input string: "Valor 7312"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)
at java.base/java.lang.Integer.parseInt(Integer.java:661)
at java.base/java.lang.Integer.parseInt(Integer.java:777)
at Main.main(Main.java:4)
javaComo usar Integer.valueOf()
Integer.valueOf()
é outro método da classe Integer. Ele retorna a interpretação decimal de um objeto string, logo, também é útil para converter Java string em int. Sua sintaxe é:
static Integer valueOf(String s)
javaVamos analisar um exemplo simples:
public class Main {
public static void main(String args[]) {
String novaString = "7312";
int parNumero = Integer.valueOf(novaString);
System.out.println("Valor da string: " + parNumero);
}
}
javaNovamente, você receberá o seguinte resultado:
Valor da string: 7312
javaSe a string contiver qualquer elemento que não seja um número inteiro, a mesma mensagem de erro apresentada no outro método será exibida novamente.