Skip to content
Related Articles

Related Articles

Improve Article

How to convert a String to an Int in Java?

  • Difficulty Level : Easy
  • Last Updated : 28 Aug, 2019

Given String str containing digits as characters, the task is to convert this given string to integer in Java.

Examples:

Input: str = "1234"
Output: 1234

Input: str = "213s"
Output: 0
Since the String contains other than digits,
hence the integer value will be 0
  • Method 1: Use Integer.parseInt() method
    This is the most simple method to convert String to integer. This function parses the string argument as a signed decimal integer.

    Syntax:

    public static int parseInt(String s)
                throws NumberFormatException
    

    Below is the implementation of the above approach:






    // Java program to convert String to int
    // using Integer.parseInt() method
      
    import java.io.*;
      
    class GFG {
      
        // Function to convert String to integer
        public static int convert(String str)
        {
            int val = 0;
            System.out.println("String = " + str);
      
            // Convert the String
            try {
                val = Integer.parseInt(str);
            }
            catch (NumberFormatException e) {
      
                // This is thrown when the String
                // contains characters other than digits
                System.out.println("Invalid String");
            }
            return val;
        }
      
        // Driver code
        public static void main(String[] args)
        {
      
            String str = "1234";
            int val = convert(str);
            System.out.println("Integer value = " + val);
            System.out.println();
      
            str = "123s";
            val = convert(str);
            System.out.println("Integer value = " + val);
        }
    }
    Output:
    String = 1234
    Integer value = 1234
    
    String = 123s
    Invalid String
    Integer value = 0
    
  • Method 2: Use Ints::tryParse method of Guava library
    Another method to convert String to integer is to use Ints::tryParse method of Guava library. It is similar to the Integer.parseInt() method, but this method is more concise and powerful.

    Syntax:

    public static Integer tryParse(String s)
    

    Below is the implementation of the above approach:




    // Java program to convert String to int
    // using Ints::tryParse method
      
    import java.io.*;
    import java.util.*;
    import com.google.common.primitives.Ints;
      
    class GFG {
      
        // Function to convert String to integer
        public static int convert(String str)
        {
            int val = 0;
            System.out.println("String = " + str);
      
            // Convert the String
            val = Optional.ofNullable(str)
                      .map(Ints::tryParse)
                      .orElse(0);
      
            return val;
        }
      
        // Driver code
        public static void main(String[] args)
        {
      
            String str = "1234";
            int val = convert(str);
            System.out.println("Integer value = " + val);
            System.out.println();
      
            str = "123s";
            val = convert(str);
            System.out.println("Integer value = " + val);
        }
    }
    Output:
    String = 1234
    Integer value = 1234
    
    String = 123s
    Integer value = 0
    

Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :