Есть два способа преобразовать String в Integer в Java:
- Строка в целое число с использованием Integer.parseInt ()
- Строка в целое число с использованием Integer.valueOf ()
String strTest = “100”;Попробуйте выполнить некоторую арифметическую операцию, например, разделить на 4 - это сразу покажет вам ошибку компиляции.
class StrConvert{public static void main(String []args){String strTest = "100";System.out.println("Using String: + (strTest/4));}}
Выход:
/StrConvert.java:4: error: bad operand types for binary operator '/'System.out.println("Using String: + (strTest/4));
Следовательно, вам необходимо преобразовать String в int, прежде чем выполнять над ней числовые операции.
Пример 1. Преобразование строки в целое число с помощью Integer.parseInt ()
Синтаксис метода parseInt следующий:
int= Integer.parseInt( );
Передайте строковую переменную в качестве аргумента.
Это преобразует строку Java в Java Integer и сохранит ее в указанной целочисленной переменной.
Проверьте приведенный ниже фрагмент кода -
class StrConvert{public static void main(String []args){String strTest = "100";int iTest = Integer.parseInt(strTest);System.out.println("Actual String:"+ strTest);System.out.println("Converted to Int: + iTest);//This will now show some arithmetic operationSystem.out.println("Arithmetic Operation on Int: " + (iTest/4));}}
Выход:
Actual String:100Converted to Int:100Arithmetic Operation on Int: 25
Пример 2: преобразование строки в целое число с помощью Integer.valueOf ()
Метод Integer.valueOf () также используется для преобразования String в Integer в Java.
Ниже приведен пример кода, показывающий процесс использования метода Integer.valueOf ():
public class StrConvert{public static void main(String []args){String strTest = "100";//Convert the String to Integer using Integer.valueOfint iTest = Integer.valueOf(strTest);System.out.println("Actual String:"+ strTest);System.out.println("Converted to Int: + iTest);//This will now show some arithmetic operationSystem.out.println("Arithmetic Operation on Int: + (iTest/4));}}
Выход:
Actual String:100Converted to Int:100Arithmetic Operation on Int:25
NumberFormatException
NumberFormatException возникает при попытке проанализировать недопустимую числовую строку. Например, строка «Guru99» не может быть преобразована в целое число.
Пример:
public class StrConvert{public static void main(String []args){String strTest = "Guru99";int iTest = Integer.valueOf(strTest);System.out.println("Actual String:"+ strTest);System.out.println("Converted to Int: + iTest);}}
В приведенном выше примере выводится следующее исключение:
Exception in thread "main" java.lang.NumberFormatException: For input string: "Guru99"