Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/10/2008, 03:58
dvd1975
 
Fecha de Ingreso: diciembre-2007
Mensajes: 26
Antigüedad: 17 años, 3 meses
Puntos: 1
no me funciona clase scanner en java

Hola buenos dias estoy realizando este ejercicio en java

Código
import java.util.Scanner; class ficheros1 {
public static void main(String args[]) {
Scanner myScanner= new Scanner(System.in);
double precio,cantidad,total;
precio=myScanner.nextDouble();
cantidad=myScanner.nextInt();
total=precio*cantidad;
System.out.println(total);
} }
me aparece el siguiente error
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:840)
at java.util.Scanner.next(Scanner.java:1461)
at java.util.Scanner.nextDouble(Scanner.java:2387)
at ficheros1.main(ficheros1.java:15)

yo tengo que escribir

19.95 5

99.75
es decir el resultado de 19.95*5

entre los dos digitos tiene que haber un espacio

pero segun he leido en interenet en ingles Exception in thread "main" java.util.InputMismatchException
es que cuando se ejecuta la linea
cantidad=myScanner.nextInt();
se espera un numero pero como yo he puesto 5.55espacio6 el espacio produce un error porque el programa espera recibir un entero sin decimales.
He probado a escribir
5.55 intro
6 intro
pero no me funciona me sigue saliendo el error anterior.
y he probado a poner

Código
precio=myScanner.nextDouble();myScanner=new Scanner(System.in);cantidad=myScanner.nextInt(); limpiando el buffer y tampoco mes sale


Código
precio=myScanner.nextDouble();
System.out.println();
cantidad=myScanner.nextInt();

y me sigue saliendo el mismo error

No se si el error es pequeño pero no quiere seguir adelante hasta saber porque se produce este error para seguir aprendiendo java, y como realizar el programa