Java Tutorial
Operators
Flow Control
String
Number and Date
Built-in Classes
Array
Class and Object
Inheritance and Polymorphism
Exception Handling
Collections, Generics and Enumerations
Reflection
Input/Output Stream
Annotation
In Java, you often need to convert between String
and int
data types. In this tutorial, we will cover how to convert a String
to an int
and an int
to a String
.
To convert a String
to an int
, you can use the parseInt()
method of the Integer
class. This method takes a String
argument and returns an int
value. If the provided String
cannot be parsed into an integer, a NumberFormatException
is thrown.
Example:
public class StringToIntExample { public static void main(String[] args) { String numberAsString = "123"; try { int number = Integer.parseInt(numberAsString); System.out.println("Converted number: " + number); // Output: Converted number: 123 } catch (NumberFormatException e) { System.out.println("Invalid number format"); } } }
There are several ways to convert an int
to a String
in Java:
a. Using Integer.toString(int)
method:
int number = 123; String numberAsString = Integer.toString(number); System.out.println("Converted string: " + numberAsString); // Output: Converted string: 123
b. Using String.valueOf(int)
method:
int number = 123; String numberAsString = String.valueOf(number); System.out.println("Converted string: " + numberAsString); // Output: Converted string: 123
c. Using Integer
object's toString()
method:
int number = 123; String numberAsString = new Integer(number).toString(); System.out.println("Converted string: " + numberAsString); // Output: Converted string: 123
d. Using string concatenation:
int number = 123; String numberAsString = "" + number; System.out.println("Converted string: " + numberAsString); // Output: Converted string: 123
In summary, converting between String
and int
data types in Java is a common operation. You can use the parseInt()
method of the Integer
class to convert a String
to an int
, and various methods like Integer.toString(int)
, String.valueOf(int)
, Integer
object's toString()
method, or string concatenation to convert an int
to a String
.
Parsing integers from String in Java
Parsing involves converting a String
representation of a number into an actual numeric data type, such as int
.
String strNumber = "123"; int parsedNumber = Integer.parseInt(strNumber); System.out.println("Parsed Number: " + parsedNumber);
NumberFormatException in Java when converting String to int
When parsing a String
to an int
, a NumberFormatException
can occur if the String
is not a valid integer.
String strNumber = "abc"; try { int parsedNumber = Integer.parseInt(strNumber); System.out.println("Parsed Number: " + parsedNumber); } catch (NumberFormatException e) { System.out.println("Invalid input: " + e.getMessage()); }
Using Integer.parseInt() for String to int conversion in Java
Integer.parseInt()
is a method in Java for converting a String
to an int
. It throws a NumberFormatException
if the conversion is not possible.
String strNumber = "456"; int parsedNumber = Integer.parseInt(strNumber); System.out.println("Parsed Number: " + parsedNumber);
Java Integer.valueOf() vs parseInt() for String to int
Both Integer.parseInt()
and Integer.valueOf()
can be used to convert a String
to an int
. The key difference is that parseInt()
returns a primitive int
, while valueOf()
returns an Integer
object.
String strNumber = "789"; // Using parseInt() int parsedNumber1 = Integer.parseInt(strNumber); // Using valueOf() Integer parsedNumber2 = Integer.valueOf(strNumber); System.out.println("Parsed Number 1: " + parsedNumber1); System.out.println("Parsed Number 2: " + parsedNumber2);
Handling invalid input while converting String to int in Java
To handle invalid input gracefully, you can use a try-catch block to catch the NumberFormatException
and provide feedback to the user.
String userInput = "xyz"; try { int parsedNumber = Integer.parseInt(userInput); System.out.println("Parsed Number: " + parsedNumber); } catch (NumberFormatException e) { System.out.println("Invalid input. Please enter a valid number."); }
Converting int to String in Java using Integer.toString()
To convert an int
to a String
, you can use the Integer.toString()
method.
int number = 123; String strNumber = Integer.toString(number); System.out.println("Converted String: " + strNumber);
Java String to int conversion with error handling
When converting a String
to an int
with potential invalid input, it's essential to handle errors to prevent exceptions.
String userInput = "abc"; try { int parsedNumber = Integer.parseInt(userInput); System.out.println("Parsed Number: " + parsedNumber); } catch (NumberFormatException e) { System.out.println("Invalid input. Please enter a valid number."); }
Java Scanner class for reading int from user input
The Scanner
class can be used to read user input as an int
. It provides methods like nextInt()
for reading integers.
import java.util.Scanner; public class InputExample { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Enter an integer: "); int userInput = scanner.nextInt(); System.out.println("You entered: " + userInput); scanner.close(); } }