Clase scanner en Java
Hace poco revisando informacion y continuando con mi preparacion para rendir mi examen de certificacion java, me tope con nuevas implementaciones que se han realizado al JDK, sobre todo en la optimizacion de memoria; una de ellas es una clase interesante el cual se ha implementado a partir del JDK 1.5 (5.0), llamada scanner, el cual deriva del paquete java.util una de la forma mas simples de utilizar esta clase es lo que normalmente haciamos para poder obtener datos desde el teclado, lo que haciamos era lo siguiente:

Bueno ahora con la implementacion de esta clase scanner, nos podemos ahorrar algo de codigo y hacerlo de la siguiente forma:

Un saludo.
Le agradeceria enormemente que me hablase un poco mas de esta clase. Me resulta muy confusa y ademas un poco rara. Me serviria mucho saber el punto de vista de un colega adicto java por eso recurro a usted. Si no fuera mucha molesta le agradeceria se comunicase con migo explicando de manera un poco mas amplia esta clase Scanner, a ramonborquez@hotmail.com.
le doy las gracias de antemano por lo mas valioso del ser humano, su tiempo. Gracias.
mi pregunta es si me podria esplicar la classe escaner y por favor noser tan formal con la explicacion
de donde puedo bajar los java docs completo con todos sus clases
por favor
Holaaa…
probe los codigos: En el primero al digitar “hola mundo”, en realidad me sale “hola mundo”.
Pero al digitar el mismo texto utilizando la clase escaner solo me sale el “hola”.
Como hacer para que interprete toda la cadena?
gracias y saludos.
Hola HO, prueba con nextLine() en lugar de next()
Saludos.
¡Hola! Para quienes estén interesados en incursionar acerca de la clase Scanner del paquete java.util, les recomiendo que echen un vistazo a la séptima edición del libro de Cómo Programa en Java de Deitel & Deitel. ¡Hasta pronto!
muchas gracias por la informacion , pero me gustaria saber mas sobre esta clase y apenas estoy empezando con programacion java entonces me gustaria una explicacion con un lenguaje mas comun
gracias
hola sabe pense que su explicacion o interpretacion de esta clase no fuera tan somera.
OK gracias me servio de mucho tu post seria super si arias post de otras clases..
Podria alguien ayudarme, tengo un problema con el scanner, al parecer mi compilador no reconoce esta clase. Ya intenté varios procedimientos pero no queda. No puedo ejecutar los programas que piden datos del teclado.
Que version del JDK usas???, porque Scanner esta implementado a partir del JDK 5.x
Hola no se si alguien me podria orientar el problema es:
dentro de un ciclo capturo 2 tipos de datos en String y un float, en la primer pasada, pide los datos correctamente, en la segunda pasada se brinca donde donde se tiene que capturar el valor String..
**Estoy usando la clase Scanner..
Gracias..
Hola Yolanda, gracias por darte una vuelta por el blog. Bueno tal vez podrías colocar parte del código para poder ver en que te podemos ayudar.
Saludos.
Si gracias, aqui esta el segmento de codigo.
public static void main(String[]args){
Scanner s= new Scanner(System.in);
float numero;
String palabra;
for(int i=1; i<=5; i++){
System.out.println("Escribe una palabra;");
palabra=s.nextLine();
System.out.println("Escribe un numero: ");
numero=s.nextFloat();
}
}//main
Muchas Gracias si me funcionó,pero si no fuera mucha molestia, me podrias explicar
Por que se tiene que estar creando la referencia al objeto Scanner dentro del ciclo
Muchas Gracias, si funcionó, pero si no fuera mucha molestia me gustaria que me explicaras por que tiene que estar dentro del ciclo, por que se tiene que hacer la
la referencia al objeto Scanner dentro del for?
Hola yolanda bueno lo que tendrias que hacer colocar Scanner s = new Scanner(System.in), dentro del for.
public static void main(String[]args){
float numero;
String palabra;
for(int i=1; i<=5; i++){
Scanner s= new Scanner(System.in);
System.out.println("Escribe una palabra;");
palabra=s.nextLine();
System.out.println("Escribe un numero: ");
numero=s.nextFloat();
}
}//main
Espero te sea util.
Saludos.