Contenido del curso

Construcción de clases y modelado de objetos

Captura de datos en consola con Scanner

Resumen

La clase Scanner en Java te permite capturar datos desde la consola de forma sencilla, ideal para practicar, prototipar y crear interacciones rápidas con tu programa. Aunque en proyectos profesionales se prefieren interfaces gráficas o APIs, dominar Scanner es el primer paso para entender cómo tu código conversa con quien lo usa.

¿Qué es la clase Scanner y para qué sirve en Java?

Scanner es una clase de Java que lee la entrada del usuario desde distintas fuentes, incluyendo la consola del sistema. Es una herramienta perfecta cuando estás aprendiendo o necesitas validar una idea sin montar una interfaz completa.

¿Qué hace la clase Scanner en Java? Captura datos que el usuario escribe en la consola y los guarda en variables para que tu programa los use. Funciona con texto, números enteros, decimales y más.

Para usarla, primero la instancias pasándole System.in como parámetro. Ese parámetro le indica que debe escuchar lo que se escribe en la consola del sistema.

java Scanner scanner = new Scanner(System.in);

¿Cómo capturar texto y números con Scanner?

Una vez creado el objeto Scanner, eliges el método según el tipo de dato que quieres recibir. Para una línea de texto usas nextLine, y para un número entero usas nextInt.

Mira cómo se ve pedir un nombre y luego concatenarlo en un mensaje. Concatenar en Java significa unir un texto con otros elementos, como variables, usando el operador + [01:15].

java System.out.println("¿Cuál es tu nombre?"); String nombre = scanner.nextLine(); System.out.println("Hola " + nombre + ", esto es Platzi Play");

Cuando ejecutas el programa, la consola pregunta el nombre, espera a que escribas algo y luego responde con el saludo personalizado. Si escribes Alejandro, verás: Hola Alejandro, esto es Platzi Play.

¿Cómo se captura un número entero con Scanner?

Para pedir la edad u otro dato numérico, declaras una variable de tipo int y usas nextInt en lugar de nextLine [02:30].

java System.out.println(nombre + ", ¿cuántos años tienes?"); int edad = scanner.nextInt(); System.out.println(nombre + ", puedes ver contenido +" + edad);

Si el usuario responde Johana con 15 años, el programa imprime: Johana, puedes ver contenido +15. Así combinas texto y números en un mismo mensaje.

¿Cuál es la diferencia entre nextLine y nextInt? nextLine lee una línea completa de texto y la guarda como String. nextInt lee solo un número entero y lo guarda como int. Elige el método según el tipo de dato esperado.

¿Cómo personalizar tu programa Platzi Play con Scanner?

Un detalle pequeño que mejora la experiencia es cambiar el clásico Hola mundo por el nombre real de tu proyecto. En el ejemplo del curso, se reemplaza por Platzi Play y se agrega un emoji de crispeta para reforzar la idea de plataforma de streaming de películas [02:00].

Esta personalización parece menor, pero te entrena en algo importante:

  • Escribir mensajes claros para el usuario.
  • Usar variables ya capturadas en mensajes posteriores.
  • Pensar en la experiencia de quien interactúa con tu programa.

Scanner se va a usar a lo largo del curso para interactuar con Platzi Play, así que mientras más practiques pidiendo distintos tipos de datos, más cómodo vas a estar cuando lleguemos a temas como programación orientada a objetos.

Te invito a experimentar: pide al usuario que elija entre varias opciones, haz preguntas divertidas o combina varios nextLine y nextInt en un mismo flujo. ¿Qué tipo de interacción se te ocurre construir con Scanner? Cuéntame en los comentarios.