Como Utilizar la Clase Scanner en Java

Dale amor a este post!!!

La clase Scanner en Java nos brinda una serie de métodos con los cuales podemos recibir información desde el Teclado al momento de programar aplicaciones en Java, a continuación veremos un ejemplo de su funcionamiento.

Considerando que tenemos una Clase Principal llamada Entrada1 junto con su respectivo método principal los cuales se ven así:

public class Entrada1 {
    public static void main(String[]args){

    }
}

Podemos empezar a desarrollar el ejemplo lo cual quedaría de la siguiente forma :

import java.util.Scanner;

public class Entrada1 {
    public static void main(String[]args){
        
        Scanner dato1=new Scanner(System.in);
        
        Scanner dato2=new Scanner(System.in);
        
    }
}

Es muy importante ocupar la librería java.util.Scanner para que los objetos dato1 y dato2 funcionen correctamente.

Dentro de dato1 vamos a recibir un nombre el cual se mostrará en pantalla

import java.util.Scanner;

public class Entrada1 {
    public static void main(String[]args){
        
        Scanner dato1=new Scanner(System.in);
        String nombre="";
        System.out.println("Escribe tu nombre");
        if(dato1.hasNextLine()){
            nombre=dato1.nextLine();
            System.out.println("Hola "+nombre);
        }        

        Scanner dato2=new Scanner(System.in);
        
    }
}

Como te habrás dado cuenta, el método dato1.hasNextLine() nos ayuda a identificar si se ha escrito un valor de tipo String en el teclado y en caso de ser verdadero, con el método dato1.nextLine() obtenemos la linea que esté escrita y se asigna a la variable nombre para después mostrarla en pantalla.

Por otro lado con dato2 vamos a recibir un valor de tipo Int y con el método dato2.hasNextInt() verificamos si se ha escrito ese valor de tipo Int, en caso de ser verdadero, con el método dato1.nextInt() obtenemos la linea que esté escrita y se asigna a la variable edad para después mostrarla en pantalla y en caso contrario muestra un mensaje de error.

El ejemplo final queda de la siguiente manera:

import java.util.Scanner;

public class Entrada1 {
    public static void main(String[]args){
        
        Scanner dato1=new Scanner(System.in);
        String nombre="";
        System.out.println("Escribe tu nombre");
        if(dato1.hasNextLine()){
            nombre=dato1.nextLine();
            System.out.println("Hola "+nombre);
        }
        
        Scanner dato2=new Scanner(System.in);
        int edad=0;
        System.out.println("Escribe tu edad");
        if(dato2.hasNextInt()){
            edad=dato2.nextInt();
            System.out.println("Tu edad es "+edad);
        }else{
            System.out.println("No es una edad válida");
        }
        
    }
}

Puedes encontrar la explicación en video aqui:

Si tienes mas dudas acerca de la Clase Scanner en Java, puedes buscar directamente en la documentación de Oracle:

https://docs.oracle.com/javase/8/docs/api/java/util/Scanner.html

Gracias.


Dale amor a este post!!!