Как преобразовать строку в целое число в Java

Часто задаваемый вопрос по типам String/int в Java: Как преобразовать тип String в тип Int?

Решение: используя метод parseInt класса Java Integer. Метод parseInt переводит тип String в Int, и вызывает исключение NumberFormatException, если строка не может быть приведена к целочисленному значению.

Посмотрим на два коротких примера.

1.      Простой пример преобразования “ string to integer” в Java

Игнорируя исключение, которое может возникнуть, всё, что нужно сделать для перевода String в int, умещается в одну строку кода:

int i = Integer.parseInt(myString);

Если строка, представленная переменной myString, является корректным целым числом, например, “1”, “200”, и т.п., она будет приведена к типу int. Если преобразование окончится неудачей, будет вызвано исключение NumberFormatException. Поэтому ваш код должен быть немного длиннее, чтобы учитывать это, как показано в следующем примере.

2. Полный пример перевода String в int

Ниже приведен полный код примера программы. Она демонстрирует процесс перевода в Java строки в целое число и обработку возможного исключения NumberFormatException:

public class JavaStringToIntExample{  public static void main (String[] args)  {    // String s = "fred";  // Используйте эту строку для теста исключения    String s = "100";     try    {      // перевод String в int выполняется здесь      int i = Integer.parseInt(s.trim());       // выводим значение после преобразования      System.out.println("int i = " + i);    }    catch (NumberFormatException nfe)    {      System.out.println("NumberFormatException: " + nfe.getMessage());    }  }}

Пояснение

В приведенном выше примере метод Integer.parseInt(s.trim()) используется для перевода строки s в целое число i в следующей строке кода:

int i = Integer.parseInt(s.trim());

Если попытка преобразования оканчивается неудачей (например, если вы пытаетесь привести строку fred к целому типу), то метод parseInt класса Integer вызовет исключение NumberFormatException, которое необходимо обработать в блоке try/catch.

В этом примере на самом деле не нужно использовать метод trim() класса String. Но в реальных программах он понадобится, поэтому я применил его здесь.

Дополнительные замечания

Раз уж мы обсуждаем эту тему, вот несколько замечаний о классах String и Integer:

  • Метод Integer.toString(int i) используется для преобразования из типа int в класс Java String.
  • Для преобразования объекта String в объект Integer используйте метод valueOf() класса Integer вместо parseInt().
  • Если нужно приводить строки к другим примитивным типам Java, например, long, используйте методы Long.parseLong(), и т.п.

Резюме

Надеюсь, что этот пример перевода String в int в Java был полезным. Если у вас есть вопросы или замечания, оставляйте их в комментариях.

Перевод статьи “How to convert a Java String to an Int” был подготовлен дружной командой проекта Сайтостроение от А до Я.