You can use any of the following ways :
– Using Integer.parseInt(string)
– Using Integer.valueof(string)
– Using Apache commons NumberUtils.toInt(string)
– Using Apache commons NumberUtils.createInteger(string)
– Using Guava library’s Ints.tryParse(string) method
– Using Integer.decode(string)
– Using new Integer(string)
Using Integer.parseInt(string)
int intEmpId1 = Integer.parseInt(empId1);
System.out.println(intEmpId1);
Output :
1001
Integer.parseInt() will throw NumberFormatException in following cases:
/ Alphabets in the input.
Integer.parseInt("100AB");
//Input number is greater than the Integer range.
Integer.parseInt("2147483648");
//Number with decimal
Integer.parseInt("1.1");
//empty String
Integer.parseInt("");
//Blank space
Integer.parseInt(" ");
Using Integer.valueof(string)
String empId2 = "2001";
Integer integerEmpId2 = Integer.valueOf(empId2);
System.out.println(integerEmpId2);
Output :
2001
Using Apache commons NumberUtils.toInt(string)
String empId3 = "3001";
int intEmpId3 = NumberUtils.toInt(empId3);
System.out.println(intEmpId3);
Output :
3001
int intEmpId4 = NumberUtils.toInt(null);
System.out.println(intEmpId4);
Output :
0
int intEmpId5 = NumberUtils.toInt("1001ABC");
System.out.println(intEmpId5);
Output :
0
int intEmpId6 = NumberUtils.toInt("1001ABC", 10);
System.out.println(intEmpId6);
Output :
10
Using Apache commons NumberUtils.createInteger(string)
String empId4 = "4001";
Integer integerEmpId7 = NumberUtils.createInteger(empId4);
System.out.println(integerEmpId7);
Output :
4001
Using Guava library’s Ints.tryParse(string) method
String empId5 = "5001";
Integer integerEmpId8 = Ints.tryParse(empId5);
System.out.println(integerEmpId8);
Output :
5001
Using Integer.decode(string)
String empId6 = "6001";
Integer integerEmpId9 = Integer.decode(empId6);
System.out.println(integerEmpId9);
Output :
6001
Using new Integer(string)
String empId7 = "7001";
Integer integerEmpId10 = new Integer(empId7);
System.out.println(integerEmpId10);
Output :
7001
However, remember that this Integer constructor is deprecated since Java9.
Complete Program
package com.blogspot.javasolutionsguide.stringtointexample;
import org.apache.commons.lang3.math.NumberUtils;
import com.google.common.primitives.Ints;
public class StringToInt {
public static void main(String[] args) {
String empId1 = "1001";
int intEmpId1 = Integer.parseInt(empId1);
System.out.println(intEmpId1);
String empId2 = "2001";
Integer integerEmpId2 = Integer.valueOf(empId2);
System.out.println(integerEmpId2);
String empId3 = "3001";
int intEmpId3 = NumberUtils.toInt(empId3);
System.out.println(intEmpId3);
int intEmpId4 = NumberUtils.toInt(null);
System.out.println(intEmpId4);
int intEmpId5 = NumberUtils.toInt("1001ABC");
System.out.println(intEmpId5);
int intEmpId6 = NumberUtils.toInt("1001ABC", 10);
System.out.println(intEmpId6);
String empId4 = "4001";
Integer integerEmpId7 = NumberUtils.createInteger(empId4);
System.out.println(integerEmpId7);
String empId5 = "5001";
Integer integerEmpId8 = Ints.tryParse(empId5);
System.out.println(integerEmpId8);
String empId6 = "6001";
Integer integerEmpId9 = Integer.decode(empId6);
System.out.println(integerEmpId9);
String empId7 = "7001";
Integer integerEmpId10 = new Integer(empId7);
System.out.println(integerEmpId10);
// Alphabets in the input.
Integer.parseInt("100AB");
//Input number is greater than the Integer range.
Integer.parseInt("2147483648");
//Number with decimal
Integer.parseInt("1.1");
//empty String
Integer.parseInt("");
//Blank space
Integer.parseInt(" ");
}
}
Dependencies used :
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>16.0.1</version>
</dependency>
0 comments:
Post a Comment