Tuesday, April 7, 2020

How to convert String to int in Java

Oracle Java Tutorial and Material, Oracle Java Guides, Oracle Java Learning, Oracle Java Cert Exam, Java Prep

We will see the various ways in which we can convert String to int(or Integer) in Java.

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)

Oracle Java Tutorial and Material, Oracle Java Guides, Oracle Java Learning, Oracle Java Cert Exam, Java Prep

Using Integer.parseInt(string)


String empId1 = "1001";
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 :
   
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>

Related Posts

0 comments:

Post a Comment