Back

Cómo convertir una cadena a entero en Java

Cómo convertir una cadena a entero en Java

Convertir una cadena a un número entero es una tarea común en Java. Ya sea que esté procesando la entrada del usuario o trabajando con datos de una fuente externa, a menudo necesitará manejar esta conversión de manera segura y eficiente. Esta guía explora tres métodos sencillos para convertir una cadena a un número entero en Java.

Puntos clave

  • Utilice Integer.parseInt() para conversiones sencillas.
  • Utilice Integer.valueOf() cuando necesite un objeto Integer en lugar de un int primitivo.
  • Siempre maneje las excepciones potenciales, como NumberFormatException, para evitar fallos.

1. Usando Integer.parseInt()

Este es el método más comúnmente utilizado para convertir una cadena a un int primitivo:

String numberStr = ""42"";
int number = Integer.parseInt(numberStr);
System.out.println(""Número convertido: "" + number);

Detalles clave

  • Devuelve un int primitivo.
  • Lanza una NumberFormatException si la cadena no se puede convertir (por ejemplo, contiene caracteres no numéricos).

Cuándo usar este método

Úselo cuando solo necesite un int primitivo y esté seguro de que la entrada es una cadena numérica válida.

2. Usando Integer.valueOf()

Si necesita un objeto Integer en lugar de un int primitivo, use Integer.valueOf():

String numberStr = ""42"";
Integer number = Integer.valueOf(numberStr);
System.out.println(""Número convertido: "" + number);

Detalles clave

  • Devuelve un objeto Integer (clase contenedora para int).
  • También lanza una NumberFormatException para cadenas no válidas.

Cuándo usar este método

Este método es útil si está trabajando con colecciones como ArrayList<Integer> que requieren objetos contenedores en lugar de primitivos.

3. Manejo de excepciones para una conversión segura

Siempre maneje las excepciones al convertir cadenas a enteros para evitar fallos en tiempo de ejecución:

String numberStr = ""42a""; // Entrada no válida
try {
    int number = Integer.parseInt(numberStr);
    System.out.println(""Número convertido: "" + number);
} catch (NumberFormatException e) {
    System.out.println(""Formato de número no válido: "" + numberStr);
}

Por qué importa el manejo de excepciones

  • Asegura que su aplicación no falle con entradas no válidas.
  • Brinda una oportunidad para registrar errores o solicitar a los usuarios que ingresen datos válidos.

Preguntas frecuentes

Tanto `Integer.parseInt()` como `Integer.valueOf()` lanzarán una `NumberFormatException`. Siempre verifique si es nulo antes de intentar la conversión.

No. Ambos métodos lanzarán una `NumberFormatException`. Use `Double.parseDouble()` o `Float.parseFloat()` para números de punto flotante, luego convierta a `int` si es necesario.

Se lanzará una `NumberFormatException` si la cadena representa un número fuera del rango de un `int` (-2,147,483,648 a 2,147,483,647).

Conclusión

Convertir una cadena a un número entero en Java es sencillo con métodos como Integer.parseInt() y Integer.valueOf(). Siempre valide la entrada y maneje las excepciones para garantizar una ejecución sin problemas en sus aplicaciones.

Listen to your bugs 🧘, with OpenReplay

See how users use your app and resolve issues fast.
Loved by thousands of developers