¿Cómo convertir una string a un int en Java?

Dado String str que contiene dígitos como caracteres, la tarea es convertir esta string dada en entero en Java.

Ejemplos:

Input: str = "1234"
Output: 1234

Input: str = "213s"
Output: 0
Since the String contains other than digits,
hence the integer value will be 0
  • Método 1: Usar el método Integer.parseInt()
    Este es el método más simple para convertir strings a enteros. Esta función analiza el argumento de string como un entero decimal con signo.

    Sintaxis:

    public static int parseInt(String s)
                throws NumberFormatException
    

    A continuación se muestra la implementación del enfoque anterior:

    // 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);
        }
    }
    Producción:

    String = 1234
    Integer value = 1234
    
    String = 123s
    Invalid String
    Integer value = 0
    
  • Método 2: Usar el método Ints::tryParse de la biblioteca Guava
    Otro método para convertir String a entero es usar el método Ints::tryParse de la biblioteca Guava. Es similar al método Integer.parseInt(), pero este método es más conciso y poderoso.

    Sintaxis:

    public static Integer tryParse(String s)
    

    A continuación se muestra la implementación del enfoque anterior:

    // 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);
        }
    }
    Producción:

    String = 1234
    Integer value = 1234
    
    String = 123s
    Integer value = 0
    

Publicación traducida automáticamente

Artículo escrito por Code_r y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *