Как преобразовать строку в целое число в 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 был полезным. Если у вас есть вопросы или замечания, оставляйте их в комментариях.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *