Introducir datos desde el Teclado con JOptionPane showInputDialog en Java

Dale amor a este post!!!

La clase JOptionPane es una de las clases mas populares en Java por su versatilidad, ya que posee varios métodos encaminados a mostrar e introducir datos en nuestras aplicaciones utilizando Cuadros de Dialogo. Estos elementos permiten al programador realizar sus aplicaciones sin necesidad de utilizar Ventanas o JFrame resolviendo cualquier problema más fácil y rápido.

Considerando que tenemos una Clase Principal llamada Entrada2 junto con su respectivo método principal los cuales se ven así:

public class Entrada2 {
    public static void main(String[]args){

    }
}

Podemos empezar a desarrollar el ejemplo lo cual quedaría de la siguiente forma :

import javax.swing.JOptionPane;

public class Entrada2 {
    public static void main(String[]args){
        
        String nombre="";
        nombre=JOptionPane.showInputDialog("Escribe tu nombre");
        
    }
}

Resulta fundamental utilizar la librería javax.swing.JOptionPane para que el ejemplo funcione correctamente.

El método showInputDialog nos permite mostrar un cuadro de dialogo con una caja de texto integrada en donde se puede introducir cualquier valor, este valor será siempre de tipo String y para este caso, se esta asignando a la variable nombre que también es de tipo String.

Pero, ¿Qué pasa cuando queremos recibir en el showInputDialog otro valor que no sea de tipo String?

Para eso se utilizan los siguiente métodos:

Puedes encontrar mas información para convertir tipos de datos en el siguiente link:

https://docs.oracle.com/en/java/

Para nuestro ejemplo vamos a agregar la variable edad y la vamos a introducir desde el showInputDialog haciendo la correspondiente conversión o parseo del tipo String al tipo Int.

import javax.swing.JOptionPane;


public class Entrada2 {
    public static void main(String[]args){
        
        String nombre="";
        nombre=JOptionPane.showInputDialog("Escribe tu nombre");
        
        int edad=0;
        edad=Integer.parseInt(JOptionPane.showInputDialog("Escribe tu edad"));
        
    }
}

Después vamos a concatenar la variable nombre y la variable edad y la mostraremos en un showMessageDialog.

import javax.swing.JOptionPane;


public class Entrada2 {
    public static void main(String[]args){
        
        String nombre="";
        nombre=JOptionPane.showInputDialog("Escribe tu nombre");
        
        int edad=0;
        edad=Integer.parseInt(JOptionPane.showInputDialog("Escribe tu edad"));
        
        String resultado="Nombre: "+nombre+"\nEdad: "+edad;
        JOptionPane.showMessageDialog(null, resultado);
    }
}

Para finalizar y solo para evitar errores al momento que se introduzca una edad que no sea de tipo Int vamos a agregar una excepción utilizando try catch y queda de la siguiente manera:

import javax.swing.JOptionPane;


public class Entrada2 {
    public static void main(String[]args){
        
        String nombre="";
        nombre=JOptionPane.showInputDialog("Escribe tu nombre");
        
        int edad=0;
        try{
            edad=Integer.parseInt(JOptionPane.showInputDialog("Escribe tu edad"));
        }catch(NumberFormatException ex){
            JOptionPane.showMessageDialog(null, "No es una edad válida");
        }
        
        String resultado="Nombre: "+nombre+"\nEdad: "+edad;
        JOptionPane.showMessageDialog(null, resultado);
    }
}

Puedes encontrar la explicación en video aquí:

Si tienes mas dudas acerca de la Clase JOptionPane en Java, puedes buscar directamente en la documentación de Oracle:

https://docs.oracle.com/javase%2F8%2Fdocs%2Fapi%2F%2F/javax/swing/JOptionPane.html

Gracias por leer este post, saludos.


Dale amor a este post!!!