Java is an object orientied programming languege. In Java you can use Integer.parseInt() or Integer.valueOf() functions to convert String value to an int value. In any case String is not a convertible then NumberFormatException will occur.
#1. Using Integer.parseInt()
Integer.parseInt() converts string value and returns an int primitive as result. For below example, first, we store 5 as a string value to id variable. Then convert it to integer and save to result variable.
1 2 3 4 5 6 7 8 9 | class ConvertStringToInt1 { public static void main(String args[]){ String id = "5"; int result = Integer.parseInt(id); System.out.println(result); } } |
Save the above content in ConvsertStringToInt1.java file and compile and run this program.
Compile:
javac ConvertStringToInt1.java
Run:
java ConvertStringToInt1 5
#2. Using Integer.valueOf()
Integer.valueOf() also uses Integer.parseInt function in backend but in result, it provides and Integer object value.
1 2 3 4 5 6 7 8 9 | class ConvertStringToInt2 { public static void main(String args[]){ String id = "5"; Integer result = Integer.valueOf(id); System.out.println(result); } } |
Save the above content in ConvsertStringToInt2.java file and compile and run this program.
Compile:
javac ConvertStringToInt2.java
Run:
java ConvertStringToInt2 5
#3. Exception in Conversion
If the given input is not parsable by the any of the above methods, NumberFormatException will be thrown. As in the below example, we are storing string”5abc” in id variable which contains alphabets. If we try to convert this number to int, NumberFormatException exception will occur.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | class ConvertStringToInt3 { public static void main(String args[]) { String id = "5abc"; try{ int result = Integer.parseInt(id); System.out.println(result); }catch(NumberFormatException e){ System.out.println(e); } } } |
Save the above content in ConvsertStringToInt3.java file and compile and run this program.
Compile:
javac ConvertStringToInt3.java
Run:
java ConvertStringToInt3 java.lang.NumberFormatException: For input string: "5abc"
Reference:
http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html
1 Comment
How to convert string to int in java 8
In Java 8 using stream API we can convert set of String to set of Integer, it involves following steps like,
1. The Set.Stream() is used to convert set to stream.
2. The Steam.map() is used to convert stream to stream.
3. The Collectorts.toset() is used to Accumulate stream to set.
4. The map() operation is used to throw NumberFormatException, if string does not contains parsable integer.