Scanner Class
Parte de la sección Fundamentos del Journey de Java de Coddy — lección 35 de 73.
Hasta ahora hemos almacenado en variables valores que teníamos en mente. Los programas generalmente no funcionan así. Recibimos valores de una fuente externa, por ejemplo, de un usuario.
En Java, obtener entrada de un usuario se hace usando la clase Scanner. Esta clase proporciona métodos para leer diferentes tipos de entrada, como enteros, números de punto flotante y cadenas.
Para usar la clase Scanner, primero necesitas crear una instancia de ella y asociarla con el flujo de entrada estándar System.in. Así es como se hace:
Scanner scanner = new Scanner(System.in);Una vez que tengas un Scanner objeto, puedes usar sus métodos para leer la entrada.
Aquí hay algunos métodos comúnmente utilizados:
nextInt(): Lee un entero.nextDouble(): Lee un double.nextLine(): Lee una línea de texto (cadena).
Aquí hay un ejemplo de cómo obtener entrada del usuario:
Scanner scanner = new Scanner(System.in);
System.out.print("Enter your age: ");
int age = scanner.nextInt();
System.out.println("Your age is: " + age);En este ejemplo, el programa solicita al usuario que ingrese su edad, lee el entero usando nextInt() y luego lo imprime de nuevo en la consola.
Después de terminar con el Scanner, es una buena práctica cerrarlo usando scanner.close() para liberar los recursos asociados con él.
Desafío
PrincipianteEscribe un programa que obtenga entrada del usuario (su nombre), y luego produzca Hello, seguido del nombre ingresado por el usuario.
Por ejemplo, si el usuario ingresa Bob, la salida esperada es Hello, Bob.
Necesitarás:
- Crear un objeto
Scannerpara leer la entrada. - Solicitar al usuario que ingrese su nombre usando exactamente:
Enter your name: - Leer el nombre del usuario usando el método apropiado de
Scanner. - Imprimir
Hello,y la variable almacenada al final.
Hoja de referencia
Para obtener entrada del usuario en Java, use la clase Scanner:
Scanner scanner = new Scanner(System.in);Métodos comunes de Scanner:
nextInt(): Lee un enteronextDouble(): Lee un doublenextLine(): Lee una línea de texto (string)
Ejemplo de lectura de entrada del usuario:
Scanner scanner = new Scanner(System.in);
System.out.print("Enter your age: ");
int age = scanner.nextInt();
System.out.println("Your age is: " + age);Cierra el scanner al finalizar para liberar recursos:
scanner.close();Pruébalo tú mismo
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// Crear un objeto Scanner
Scanner scanner = new Scanner(System.in);
// Solicitar al usuario que ingrese su nombre
// Leer el nombre del usuario
// Imprimir el mensaje de saludo
}
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operators Part 1
Arithmetic OperatorsModulo OperatorIncrement/DecrementPost Increment/DecrementArithmetic ShortcutsComparison OperatorsString Comparison5Operators Part 2
Logical Operators Part 1Logical Operators Part 2Recap - Simple LogicLogical Operators Part 3Logical Operators Part 43Variables Part 2
ConstantsNaming ConventionsRecap - Initialize VariablesType Casting Part 1Type Casting Part 26Decision Making
If StatementIf - ElseSwitch StatementTernary OperatorRecap - If ElseNested If - Else