Sunday, November 17, 2024
Google search engine
HomeLanguagesJavaHow to convert a String to an Int in Java?

How to convert a String to an Int in Java?

Given a String str containing digits as characters, the task is to convert this given string to an integer in Java. In this article, we will learn how to convert a String to an Int 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

Methods to convert a String to an Int in Java

There are certain methods to convert a String to an Int in Java as mentioned below:

1. Use Integer.parseInt() method 

This is the most simple method to convert a String to an integer. The Integer.parseInt() 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




// 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

2. Java valueOf() method

It is a method that converts String into Integer Object. 

Below is the Implementation of the above method:

Java




// Java program to convert String to int
// using Ints::tryParse method
import java.io.*;
import java.util.*;
 
// Driver Class
class GFG {
    // Driver code
    public static void main(String[] args)
    {
        String str = "1234";
 
        int val = Integer.valueOf(str);
        System.out.println("Integer value = " + val);
        System.out.println();
    }
}


Output

Integer value = 1234

Note: String literal, calling Integer.parseInt() or Integer.valueOf() methods throw NumberFormatException if you don’t have numbers. 

3. Use the Ints::tryParse method of the Guava library 

Another method to convert a String to an integer is to use the Ints::tryParse method of the 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




// Java program to convert String to int
// using Ints::tryParse method
import com.google.common.primitives.Ints;
import java.io.*;
import java.util.*;
 
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

RELATED ARTICLES

Most Popular

Recent Comments