Tuesday 29 January 2019

How do I convert a String to an int in Java?



How can I convert a String to an int in Java?



My String contains only numbers, and I want to return the number it represents.



For example, given the string "1234" the result should be the number 1234.


Answer



String myString = "1234";
int foo = Integer.parseInt(myString);



If you look at the Java Documentation you'll notice the "catch" is that this function can throw a NumberFormatException, which of course you have to handle:



int foo;
try {
foo = Integer.parseInt(myString);
}
catch (NumberFormatException e)
{

foo = 0;
}


(This treatment defaults a malformed number to 0, but you can do something else if you like.)



Alternatively, you can use an Ints method from the Guava library, which in combination with Java 8's Optional, makes for a powerful and concise way to convert a string into an int:



import com.google.common.primitives.Ints;


int foo = Optional.ofNullable(myString)
.map(Ints::tryParse)
.orElse(0)

No comments:

Post a Comment

php - file_get_contents shows unexpected output while reading a file

I want to output an inline jpg image as a base64 encoded string, however when I do this : $contents = file_get_contents($filename); print &q...