Como converter uma string em uma Int em Java

Mohammad Irfan 12 outubro 2023
  1. Converta uma string para umaint utilizando a parseInt() em Java
  2. Converter String em um int utilizando Apache em Java
  3. Converter String para um int utilizando decode() em Java
  4. Converter String para um int utilizando valueOf() em Java
  5. Converter String para um int utilizando parseUnsignedInt() em Java
  6. Converter String depois de remover caracteres não-numéricos utilizando replaceAll() em Java
Como converter uma string em uma Int em Java

Este tutorial introduz como converter uma string em Java e lista alguns exemplos de códigos para entendê-la.

Converta uma string para umaint utilizando a parseInt() em Java

Tanto String quanto int são tipos de dados em Java. A string é utilizada para armazenar informações textuais enquanto aint é utilizada para armazenar dados numéricos.

Aqui, utilizamos o método parseInt() da classe Integer que retorna um número inteiro. Uma vez que o Java faz o auto-boxing implícito, então podemos armazená-lo em tipo int primitivo. Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "1234";
    int int_val = Integer.parseInt(str);
    System.out.println(int_val);
  }
}

Resultado:

1234

Converter String em um int utilizando Apache em Java

Se você estiver trabalhando com a biblioteca Apache, você pode utilizar o método toInt() da classe NumberUtils que retorna um valor int. Se a string passada contiver qualquer char não numérico, este método não lança nenhuma exceção, mas retorna 0. É seguro utilizar toInt() ao invés de parseInt() que lança NumberFormatException. Veja o exemplo abaixo.

import org.apache.commons.lang3.math.NumberUtils;

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "1234";
    int int_val = NumberUtils.toInt(str);
    System.out.println(int_val);
    str = "1234x"; // non-numeric string
    int_val = NumberUtils.toInt(str);
    System.out.println(int_val);
  }
}

Resultado:

1234 0

Converter String para um int utilizando decode() em Java

Podemos utilizar o método decode() da classe Integer para obter o valor int de uma string. Ele retorna o valor Integer, mas se você quiser obter o valor int (primitivo) então utilize o método intValue() com decode(). Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "1424";
    int int_val = Integer.decode(str);
    System.out.println(int_val);
    // int primitive
    int_val = Integer.decode(str).intValue();
    System.out.println(int_val);
  }
}

Resultado:

1424

Converter String para um int utilizando valueOf() em Java

Podemos utilizar o método valueOf() para obter um valor int de uma string após a conversão.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "1424";
    int int_val = Integer.valueOf(str);
    System.out.println(int_val);
  }
}
1424 1424

Converter String para um int utilizando parseUnsignedInt() em Java

Se quisermos converter uma string que não inclua um sinal, utilize o método parseUnsignedInt() para obter valor int. Ele funciona bem com valor de string não assinado e lança uma exceção se o valor for assinado.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "1424";
    int int_val = Integer.parseUnsignedInt(str);
    System.out.println(int_val);
  }
}

Resultado:

1424

Converter String depois de remover caracteres não-numéricos utilizando replaceAll() em Java

Se a string contém caracteres não-numéricos, utilize o método replaceAll() da classe String com regex para remover todos os caracteres não-numéricos e depois utilize o método parseInt() da classe Integer para obter seu valor inteiro equivalente. Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "1424x";
    str = str.replaceAll("[^\\d]", "");
    int int_val = Integer.parseInt(str);
    System.out.println(int_val);
  }
}

Resultado:

1424

Artigo relacionado - Java String

Artigo relacionado - Java Integer