Java – Convert String to int

In Java, you can use Integer.parseInt() to convert a String to int.

1. Integer.parseInt() Examples

Example to convert a String “10” to an primitive int.


	String number = "10";
	int result = Integer.parseInt(number);			
	System.out.println(result);

Output


10

2. Integer.valueOf() Examples

Alternatively, you can use Integer.valueOf(), it will returns an Integer object.


	String number = "10";
	Integer result = Integer.valueOf(number);		
	System.out.println(result);

Output


10
Note
In summary, parseInt(String) returns a primitive int, whereas valueOf(String) returns a new Integer() object.

3. NumberFormatException

If the string does not contain a parsable integer, a NumberFormatException will be thrown.


	String number = "10A";
	int result = Integer.parseInt(number);
	System.out.println(result);

Output


Exception in thread "main" java.lang.NumberFormatException: For input string: "10A"
	at java.lang.NumberFormatException.forInputString(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at java.lang.Integer.valueOf(Unknown Source)

References

  1. Integer.parseInt() JavaDoc
  2. Integer.valueOf() JavaDoc
  3. NumberFormatException JavaDoc

About the Author

author image
mkyong
Founder of Mkyong.com, love Java and open source stuff. Follow him on Twitter, or befriend him on Facebook or Google Plus. If you like my tutorials, consider make a donation to these charities.

Comments

avatar
11 Comment threads
3 Thread replies
1 Followers
 
Most reacted comment
Hottest comment thread
14 Comment authors
PassathasibRobert MiielewczykJohnGroot Recent comment authors
newest oldest most voted
anurag
Guest
anurag

Hello sir
this is well explained java String conversion.
really beautiful
thanks

Groot
Guest
Groot

I am GROOT!

Jettyjie
Guest
Jettyjie

why don’t use apache NumberUtils, or charge the String matchs d+,I think use Integer.valueof(String) directly is not good,we can avoid the exception

kisna
Guest
kisna

super

Devendra Gaud
Guest
Devendra Gaud

thanks you

phaneesh
Guest
phaneesh

super

Hey
Guest
Hey

test jj

Krishnendu Dutta
Guest
Krishnendu Dutta

thnx

John
Guest
John

If my string has more than 10 digits,the compiler gives me an error,there’s a way to fix it? How can I read more than that from a string?

Robert Miielewczyk
Guest
Robert Miielewczyk

max 32 bit integer is 2,147,483,647 which is why it gives you an error you cant assign such a big number, you should assign it to 64 bit int, or leave it as a String

hasib
Guest
hasib

how can i assign it into 64 bit

Passat
Guest
Passat

use long?

nnnn
Guest
nnnn

hhhh

Hasbi, Muh
Guest
Hasbi, Muh

Dear Sir MKYong,
Thank you for your simple but precise explanation.
Regards.