¡Aprende Cómo Declarar Variables String y Capturar Datos con JOptionPane en Java Fácilmente!post-template-default single single-post postid-46 single-format-standard et_pb_button_helper_class et_fixed_nav et_show_nav et_secondary_nav_enabled et_primary_nav_dropdown_animation_fade et_secondary_nav_dropdown_animation_fade et_header_style_left et_pb_footer_columns4 et_cover_background et_pb_gutter et_pb_gutters3 et_right_sidebar et_divi_theme et-db
771 715 4434

En esta ocasión aprenderemos a utilizar la clase JOptionPane en nuestros programas, esta clase genera cuadros de dialogo para pedir datos a un usuario o para arrojar un cuadro de dialogo de aviso. Son de gran utilidad, ya que en la mayoría de los programas se necesita pedir datos al usuario para que el programa realice la tarea que se le programó. Hasta ahora nosotros como programadores hemos asignado los datos (los valores) a nuestra variables para que nuestro programa trabaje con ellas, pero ahora haremos que el usuario del programa le de esos valores de manera directa sin necesidad modifiquemos nuestro valor de variable para cada problema diferente.

¿Qué es JOptionPane y por qué usarlo?

JOptionPane es parte de la librería Swing para el manejo de interfaces gráficas. Esta clase hace realmente fácil el mostrar ventanas standards para mostrar y pedir información a los usuarios. Los métodos showMessageDialog y showInputDialog de JOptionPane son un poco avanzados para la altura de nuestro curso actual pero son la forma más simple de entrada y salida de información para nuestros proximos tutoriales.

Preparando el Entorno: Importando JOptionPane

Para poder usar la clase JOptionPane necesitamos importar la librería donde se encuentra esa clase a nuestro programa, esto lo hacemos al inicio de nuestro archivo de código. La sentencia típica para esto es import javax.swing.JOptionPane;.

Recibiendo Entrada de Texto: El Método showInputDialog()

Este método es una función que muestra una ventana con una caja de texto y dos botones: Aceptar y Cancelar. Si oprimimos aceptar, recibiremos un String con el contenido de la caja de texto como retorno de la función. Hay que tomar en cuenta y dejar muy en claro que la instrucción JOptionPane.showInputDialog(); siempre nos retornara una cadena de caracteres (un String), por eso siempre que utilicemos esa instrucción tenemos que guardar su resultado en una variable de tipo String, que ya debió haber sido declarada anteriormente.

Por ejemplo, después de declarar nuestra clase y nuestro método main, podemos declarar una variable String nombre. Pero con el uso del JOptionPane.showInputDialog(), java arroja una ventana donde hay una caja de texto el la cual el usuario ingresara su nombre.

Lea también: IVA 21% Excel

Mostrando Mensajes al Usuario: El Método showMessageDialog()

Además de recibir entrada, JOptionPane también nos permite mostrar mensajes al usuario. Este método crea una ventana que muestra un mensaje entregado en el parámetro message. El parámetro parentComponent es para indicar la ventana padre. En estos primeros tutoriales usaremos null en este parámetro.

Manejo de Diferentes Tipos de Datos y Conversión

Para realizar cálculos con datos proporcionados por el usuario, es muy sencillo, un tanto similar a lo que se hizo anteriormente, solo que hay que tomar en cuenta algunas cosas. Es obvio pensar que con cadenas de caracteres no se pueden realizar cálculos, pero si el usuario introduce un numero en la caja de texto, como ya mencionamos, este se guardara como texto y no como un cifra matemática.

Para convertir una cadena de texto que representa un número entero en un tipo de dato numérico, se utiliza la instrucción Integer.parseInt(). Por ejemplo, la instrucción num1 = Integer.parseInt(numero1); indica que convierta a un número en formato int lo que contiene la variable de tipo String numero1 y que el resultado lo guarde en la variable int num1.

Similarmente, para convertir una cadena de texto que representa un número con decimales a un tipo de dato double, se utiliza Double.parseDouble(). Por ejemplo, la instrucción num2 = Double.parseDouble(numero2); indicamos que convierta lo que contiene la variable numero2 a un número en formato double y que lo guarde en la variable double num2.

Gestión de Casos Especiales: Botón "Cancelar" y Entradas Vacías

El valor null al cancelar

Si el usuario pulsa el botón cancelar, el programa no se detendrá ahí, si no que guardara ese valor en la variable que le hallamos asignado. Cuando se pulsa el botón cancelar el JOptionPane ya no retorna un numero, ni una cadena de caracteres, ni una cadena de caracteres en blanco, ni ningún dato especifico, sino que regresa un VALOR VACÍO, UN VALOR NULO al que se le llama NULL. Java lee null como un vacío y no puede realizar operaciones con ese valor, mas que solo operaciones lógicas para tomar decisiones.

Lea también: Guía IVA reducido

Para entenderlo mejor haremos un programa donde el usuario introduzca su edad y el programa determine si es mayor de edad o no, pero si el usuario pulsa "Cancelar" el programa debe terminarse, porque suponemos que si un usuario esta cancelando la operación es porque ya no necesita del programa.

Si el usuario en lugar de presionar "cancelar" hubiese escrito un numero, 20 por ejemplo, el programa hubiera pasado a nuestra instrucción if donde se iba a evaluar ¿20 es igual a null?, esto no no se cumple por tanto se pasara a la instrucción else, donde se crea otra variable de tipo int llamada edad2 que es donde se va a almacenar el numero matemático ya convertido de la edad que proporciono el usuario (recuerde que el JOptionPane retorno un String y que hay que convertirlo a int para realizar la operación lógica). Posteriormente, la variable String edad se convierte a un numero en formato int y se guarda en la variable edad2, ya tenemos nuestro numero para hacer la operación, así que ahora anidamos otro if para determinar si es mayor de edad o no.

Entradas de Texto Vacías

Si al momento de que Java arroje una ventana pidiendo un número, el usuario no ingresa ningún dato y da "Aceptar", el resultado final sera un ERROR de lógica del programa, ya que al no ingresar nada en la caja de texto, se guardara una cadena de caracteres en blanco y una cadena de caracteres en blanco no puede convertirse en un numero int o double. Necesita ser una cadena de caracteres que contenga un numero para poder ser transformado a los formatos necesarios para hacer operaciones matemáticas, entonces al momento de que el programa intente realizar la suma de los dos números o de las variables num1 y num2, hallara que estan vacíos y que no pueden sumarse.

Lea también: ¿Cómo localizar tus XML del SAT?

tags: #como #declarar #una #variable #string #en