Існує два способи перетворення рядка в ціле число на 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));
Отже, вам потрібно перетворити рядок у int, перш ніж виконувати з ним числові операції
Приклад 1: Перетворення рядка в ціле число за допомогою Integer.parseInt ()
Синтаксис методу parseInt наступний:
int= Integer.parseInt( );
В якості аргументу передайте рядкову змінну.
Це перетворить Java String у 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 () також використовується для перетворення рядка в ціле в 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"