Buenas tardes!!!
Resuelvo el ejercicio del capitulo 70° del curso. Se nos presento el siguiente código:
import javax.swing.JOptionPane;
public class ejemplo1 {
public static void main (String[] Args) {
String entradaUsuario = JOptionPane.showInputDialog ( "Introduzca un número:" );
System.out.println ("El doble del número introducido es: " + 2*entradaUsuario);
}
}
El error:
El problema que tenemos es que nos salta un mensaje de error “operator * cannot be applied to int, java.lang.String”.Y las preguntas, eran estas:
¿Qué interpretación haces de este mensaje de error?
String entradaUsuario = JOptionPane.showInputDialog ( "Introduzca un número:" );Lo que sucede aqui, es que estamos usando este operador "*" (multiplicacion) con cadenas de texto.. osea, se esta multiplicando un
entero por
cadena de texto (int * String). Esto da como resultado como se ve, "Error".
¿Cómo se puede corregir el código para que a través de una conversión de tipos se ejecute el programa?
Lo corregi de esta manera:
import javax.swing.JOptionPane;
public class ejemplo1 {
public static void main (String[] Args) {
String entradaUsuario = JOptionPane.showInputDialog ( "Introduzca un número:" );
Integer num = 0;
num = num.valueOf(entradaUsuario);
System.out.println ("El doble del número introducido es: " + 2*num);
}
}
Ejecución...!