- Java String to int Conversion – 10 Examples
- Java String to int Conversion Methods
- Important Points for String to int Parsing
- Java String to integer Examples
- 1. parseInt(String s)
- 2. parseInt(String s, int radix)
- 3. parseInt(CharSequence s, int beginIndex, int endIndex, int radix)
- 4. valueOf(String s)
- 5. valueOf(String s, int radix)
- 6. NumberFormatException Example
- 7. NullPointerException when parsing substring
- 8. IndexOutOfBoundsException when parsing substring
- 9. NumberFormatException when radix is out of range
- 10. Java String to int Removing Leading Zeroes
- Conclusion
- References:
- Вопрос-ответ: как в Java правильно конвертировать String в int?
- Обсуждение
- Java switch string to int
- Java String to Integer Example: Integer.valueOf()
- NumberFormatException Case
- References
- Feedback
- Help Others, Please Share
- Learn Latest Tutorials
- Preparation
- Trending Technologies
- B.Tech / MCA
- Javatpoint Services
- Training For College Campus
- String to Int in Java – How to Convert a String to an Integer
- How to Convert a String to an Integer in Java Using Integer.parseInt
- How to Convert a String to an Integer in Java Using Integer.valueOf
- Summary
Java String to int Conversion – 10 Examples
Java String to int conversion can be done using the Integer wrapper class. There are two static methods for this purpose – parseInt() and valueOf().
Java String to int Conversion Methods
The Integer class provides 5 overloaded methods for the string to int conversion.
- parseInt(String s): parses the string as a signed decimal value. The string should have only decimal digits. The first character can be ASCII minus sign (-) or plus sign (+).
- parseInt(String s, int radix): parses the given string as the signed integer in the radix.
- parseInt(CharSequence s, int beginIndex, int endIndex, int radix): The method is useful in parsing a substring to an integer. If the index values are invalid, IndexOutOfBoundsException is thrown. If the CharSequence is null, NullPointerException is thrown.
- valueOf(String s): This method returns an Integer object. The string is parsed as a signed decimal value. It calls parseInt (s, 10) internally.
- valueOf(String s, int radix): internally calls the parseInt(s, radix) method and returns the Integer object.
Important Points for String to int Parsing
- All the parseInt() and valueOf() methods throw NumberFormatException if the string is not parsable.
- The radix value should be in the supported range i.e. from Character.MIN_RADIX (2) to Character.MAX_RADIX(36), otherwise NumberFormatException is thrown.
- The parseInt() methods return int primitive data type.
- The valueOf() methods return an Integer object.
- The valueOf() methods internally calls parseInt() methods.
- Since Java supports autoboxing, we can use int and Integer in our program interchangeably. So we can use either parseInt() or valueOf() method to convert a string to integer.
- The parseInt() method to parse substring was added to String class in Java 9 release.
- The string should not contain the prefix used to denote an integer in the different radix. For example, “FF” is valid but “0xFF” is not a valid string for the conversion.
- The valueOf() methods are present because it’s present in every wrapper class and String to convert other data types to this object. Recommended Read: Java String valueOf() method.
Java String to integer Examples
Let’s look at some examples for parsing a string to an integer using the parseInt() and valueOf() methods.
1. parseInt(String s)
jshell> Integer.parseInt("123"); $69 ==> 123 jshell> Integer.parseInt("-123"); $70 ==> -123 jshell> Integer.parseInt("+123"); $71 ==> 123 jshell> Integer.parseInt("-0"); $72 ==> 0 jshell> Integer.parseInt("+0"); $73 ==> 0
2. parseInt(String s, int radix)
jshell> Integer.parseInt("FF", 16); $74 ==> 255 jshell> Integer.parseInt("1111", 2); $75 ==> 15
3. parseInt(CharSequence s, int beginIndex, int endIndex, int radix)
jshell> String line = "Welcome 2019"; line ==> "Welcome 2019" jshell> Integer.parseInt(line, 8, 12, 10) $77 ==> 2019 jshell> String lineMixed = "5 in binary is 101"; lineMixed ==> "5 in binary is 101" jshell> Integer.parseInt(lineMixed, 0, 1, 10) $79 ==> 5 jshell> Integer.parseInt(lineMixed, 15, 18, 2) $80 ==> 5
4. valueOf(String s)
jshell> Integer io = Integer.valueOf(123); io ==> 123 jshell> int i = Integer.valueOf(123); i ==> 123
The valueOf() method returns Integer object. But, we can assign it to int also because Java supports autoboxing.
5. valueOf(String s, int radix)
jshell> Integer.valueOf("F12", 16) $84 ==> 3858 jshell> int i = Integer.valueOf("F12", 16) i ==> 3858 jshell> int i = Integer.valueOf("077", 8) i ==> 63
6. NumberFormatException Example
jshell> Integer.parseInt("abc"); | Exception java.lang.NumberFormatException: For input string: "abc" | at NumberFormatException.forInputString (NumberFormatException.java:68) | at Integer.parseInt (Integer.java:658) | at Integer.parseInt (Integer.java:776) | at (#87:1) jshell> Integer.parseInt("FF", 8); | Exception java.lang.NumberFormatException: For input string: "FF" under radix 8 | at NumberFormatException.forInputString (NumberFormatException.java:68) | at Integer.parseInt (Integer.java:658) | at (#88:1) jshell>
7. NullPointerException when parsing substring
jshell> Integer.parseInt(null, 1, 2, 10); | Exception java.lang.NullPointerException | at Objects.requireNonNull (Objects.java:221) | at Integer.parseInt (Integer.java:701) | at (#89:1) jshell>
8. IndexOutOfBoundsException when parsing substring
jshell> Integer.parseInt("Hello 2019", 1, 100, 10); | Exception java.lang.IndexOutOfBoundsException | at Integer.parseInt (Integer.java:704) | at (#90:1) jshell>
9. NumberFormatException when radix is out of range
jshell> Integer.parseInt("FF", 50); | Exception java.lang.NumberFormatException: radix 50 greater than Character.MAX_RADIX | at Integer.parseInt (Integer.java:629) | at (#91:1) jshell>
10. Java String to int Removing Leading Zeroes
If the string is prefixed with zeroes, they are removed when converted to int.
jshell> Integer.parseInt("00077"); $95 ==> 77 jshell> Integer.parseInt("00077", 16); $96 ==> 119 jshell> Integer.parseInt("00077", 12); $97 ==> 91 jshell> Integer.parseInt("00077", 8); $98 ==> 63
Conclusion
Java String to int conversion is very easy. We can use either parseInt() or valueOf() method. Java 9 added another utility method to parse substring to an integer.
References:
Вопрос-ответ: как в Java правильно конвертировать String в int?
int в String — очень просто, и вообще практически любой примитивный тип приводится к String без проблем.
int x = 5; String text = "X lang-java line-numbers">int i = Integer.parseInt (myString);
Если строка, обозначенная переменной myString , является допустимым целым числом, например «1», «200», Java спокойно преобразует её в примитивный тип данных int . Если по какой-либо причине это не удается, подобное действие может вызвать исключение NumberFormatException , поэтому чтобы программа работала корректно для любой строки, нам нужно немного больше кода. Программа, которая демонстрирует метод преобразования Java String в int , управление для возможного 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 ())
- Integer.toString (int i) используется для преобразования int в строки Java.
- Если вы хотите преобразовать объект String в объект Integer (а не примитивный класс int ), используйте метод valueOf () для класса Integer вместо метода parseInt () .
- Если вам нужно преобразовать строки в дополнительные примитивные поля Java, используйте такие методы, как Long.parseLong () и ему подобные.
Java switch string to int
Java String to Integer Example: Integer.valueOf()
The Integer.valueOf() method converts String into Integer object. Let's see the simple code to convert String to Integer in Java.
NumberFormatException Case
If you don't have numbers in string literal, calling Integer.parseInt() or Integer.valueOf() methods throw NumberFormatException.
Exception in thread "main" java.lang.NumberFormatException: For input string: "hello" at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.base/java.lang.Integer.parseInt(Integer.java:652) at java.base/java.lang.Integer.parseInt(Integer.java:770) at StringToIntegerExample3.main(StringToIntegerExample3.java:4)
References
For Videos Join Our Youtube Channel: Join Now
Feedback
Help Others, Please Share
Learn Latest Tutorials
Preparation
Trending Technologies
B.Tech / MCA
Javatpoint Services
JavaTpoint offers too many high quality services. Mail us on h[email protected], to get more information about given services.
- Website Designing
- Website Development
- Java Development
- PHP Development
- WordPress
- Graphic Designing
- Logo
- Digital Marketing
- On Page and Off Page SEO
- PPC
- Content Development
- Corporate Training
- Classroom and Online Training
- Data Entry
Training For College Campus
JavaTpoint offers college campus training on Core Java, Advance Java, .Net, Android, Hadoop, PHP, Web Technology and Python. Please mail your requirement at [email protected].
Duration: 1 week to 2 week
Like/Subscribe us for latest updates or newsletter
String to Int in Java – How to Convert a String to an Integer
Ihechikara Vincent Abba
When working with a programming language, you may want to convert strings to integers. An example would be performing a mathematical operation using the value of a string variable.
In this article, you'll learn how to convert a string to an integer in Java using two methods of the Integer class — parseInt() and valueOf() .
How to Convert a String to an Integer in Java Using Integer.parseInt
The parseInt() method takes the string to be converted to an integer as a parameter. That is:
Integer.parseInt(string_varaible)
Before looking at an example of its usage, let's see what happens when you add a string value and an integer without any sort of conversion:
In the code above, we created an age variable with a string value of "10".
When added to an integer value of 20, we got 1020 instead of 30.
Here's a quick fix using the parseInt() method:
In order to convert the age variable to an integer, we passed it as a parameter to the parseInt() method — Integer.parseInt(age) — and stored it in a variable called age_to_int .
When added to another integer, we got a proper addition: age_to_int + 20 .
How to Convert a String to an Integer in Java Using Integer.valueOf
The valueOf() methods works just like the parseInt() method. It takes the string to be converted to an integer as its parameter.
The explanation for the code above is the same as the last section:
- We passed the string as a parameter to valueOf() : Integer.valueOf(age) . It was stored in a variable called age_to_int .
- We then added 20 to the variable created: age_to_int + 20 . The resulting value was 30 instead of 1020.
Summary
In this article, we talked about converting strings to integers in Java.
We saw how to convert a string to an integer in Java using two methods of the Integer class — parseInt() and valueOf() .