introducir datos usuario
Hola.
Si quiero que el usuario introduzca dos numeros seguidos, ¿como puedo hacerlo? Lo digo porque al segundo system.in.read() me manda al carajo....
System.out.print("¿Qué operación desea hacer?:");
operacion=System.in.read();
System.out.print("¿Cuánto dinero quiere ingresar?:");
op=System.in.read();
Si quiero que el usuario introduzca dos numeros seguidos, ¿como puedo hacerlo? Lo digo porque al segundo system.in.read() me manda al carajo....
System.out.print("¿Qué operación desea hacer?:");
operacion=System.in.read();
System.out.print("¿Cuánto dinero quiere ingresar?:");
op=System.in.read();
Hola:
System.in.read() lee solo un byte del teclado y lo devuelve como entero.
Si en la primera pregunta escribes 1 y pulsas retorno de carro, el resultado es
operacion = 49 (es el codigo ascii del 1)
queda sin leer el valor del retorno de carro, que en windows son dos bytes.
Cuando haces el segundo System.in.read(), no te da opcion a escribir nada, porque tiene uno de los bytes del retorno de carro sin leer. Ese es el que lee y devuelve inmediatamente un 13 (codigo ascii del retorno de carro).
Para leer correctamente, echa un ojo en http://chuidiang.blogspot.com/2005/09/entrada-standard-en-java.html
Se bueno.
System.in.read() lee solo un byte del teclado y lo devuelve como entero.
Si en la primera pregunta escribes 1 y pulsas retorno de carro, el resultado es
operacion = 49 (es el codigo ascii del 1)
queda sin leer el valor del retorno de carro, que en windows son dos bytes.
Cuando haces el segundo System.in.read(), no te da opcion a escribir nada, porque tiene uno de los bytes del retorno de carro sin leer. Ese es el que lee y devuelve inmediatamente un 13 (codigo ascii del retorno de carro).
Para leer correctamente, echa un ojo en http://chuidiang.blogspot.com/2005/09/entrada-standard-en-java.html
Se bueno.