Inicio > Java, Linux, NetBeans, Programacion > Clase scanner en Java

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:

 buffer.png

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

scanner.png

Categorías:Java, Linux, NetBeans, Programacion Etiquetas:,
  1. Ramon Francisco
    Diciembre 24, 2007 a las 12:03 am | #1

    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.

  2. carlos
    Marzo 24, 2008 a las 9:19 pm | #2

    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

  3. HO
    Noviembre 20, 2008 a las 6:47 am | #3

    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.

  4. nachxs
    Noviembre 20, 2008 a las 9:09 am | #4

    Hola HO, prueba con nextLine() en lugar de next()

    Saludos.

  5. Enero 5, 2009 a las 6:25 pm | #5

    ¡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!

  6. benito
    Marzo 1, 2009 a las 6:00 pm | #6

    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

  7. abel27
    Junio 22, 2009 a las 8:12 pm | #7

    hola sabe pense que su explicacion o interpretacion de esta clase no fuera tan somera.

  8. Jako
    Julio 22, 2009 a las 5:14 am | #8

    OK gracias me servio de mucho tu post seria super si arias post de otras clases..

  9. Ramms
    Octubre 1, 2009 a las 8:54 pm | #9

    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.

    • nachxs
      Octubre 1, 2009 a las 9:45 pm | #10

      Que version del JDK usas???, porque Scanner esta implementado a partir del JDK 5.x

  10. Yolanda G.
    Octubre 15, 2009 a las 10:58 am | #11

    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..

    • nachxs
      Octubre 15, 2009 a las 4:30 pm | #12

      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.

      • yolanda G.
        Octubre 20, 2009 a las 1:09 pm | #13

        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

  11. Yolanda G.
    Octubre 23, 2009 a las 9:18 am | #14

    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

  12. Yolanda G.
    Octubre 23, 2009 a las 9:47 am | #15

    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?

  13. nachxs
    Octubre 22, 2009 a las 9:46 am | #16

    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.

  1. Aún no hay trackbacks