Entrada y salida de datos
Entrada y salida de datos
Hasta el momento, solo hemos visto cómo declarar variables y asignarles valores. Sin embargo, de esta manera, no podemos interactuar con el código que hemos desarrollado.
Existen múltiples maneras de interactuar con un programa, proporcionando datos de entrada y mostrando datos de salida, ya sea mediante archivos, bases de datos, interfaces gráficas, etc.
Para comenzar, veremos cómo mostrar datos de salida en la consola, y cómo obtener datos de entrada desde la consola. Para ello, utilizaremos la clase Scanner
y la clase System
. Cabe aclarar que, de momento, no es necesario entender cómo funcionan estas clases, ya que las estudiaremos más adelante. De momento, solo debemos saber cómo utilizarlas.
Mostrar datos de salida
Previamente, vimos cómo mostrar datos de salida en la consola utilizando el método println
de la clase System
.
1System.out.println("Hola Mundo!");
En este caso, el método println
recibe como parámetro una cadena de texto, la cual imprime en la consola. Además, agrega un salto de línea al final.
No obstante, también podemos utilizar el método println
para mostrar el valor de una variable aunque no sea de tipo String
. En este caso, el método println
convierte el valor de la variable a una cadena de texto y la imprime en la consola.
1int numero = 5;2System.out.println(numero); // 5
Ahora haremos algunas aclaraciones sobre esta sentencia.
- El método
println
recibe como argumento un valor de tipoString
, es decir, una cadena de texto. En este caso, el argumento que le pasamos es"Hola Mundo!"
. - El método
println
imprime el valor que recibe como argumento en la consola, y luego agrega un salto de línea.
Obtener datos de entrada
Para obtener datos de entrada desde la consola, utilizaremos la clase Scanner
. Para ello, debemos importar la clase Scanner
en nuestro programa.
1import java.util.Scanner;
Posteriormente, utilizaremos la clase Scanner
, el cual nos permitirá obtener datos de entrada desde la consola.
1Scanner scanner = new Scanner(System.in);
En este momento, solo debemos saber que la clase Scanner
nos permite obtener datos de entrada desde la consola, indicando el tipo de dato que queremos obtener mediante un método específico.
Por ejemplo, si queremos obtener un número entero, debemos utilizar el método nextInt
.
1int numero = scanner.nextInt();
Cuando método nextInt
sea invocado, se pausará la ejecución del programa hasta que el usuario ingrese un número entero y presione la tecla Enter
. Una vez que el usuario ingrese el número, el método nextInt
devolverá el número ingresado, y el programa continuará su ejecución. Si el usuario ingresa un valor que no se puede interpretar como un número entero, el programa mostrará un error.
De manera similar, podemos encontrar los métodos nextByte
, nextShort
, nextLong
, nextFloat
, nextDouble
, nextBoolean
y nextLine
, los cuales nos permiten obtener datos de entrada de los tipos de datos byte
, short
, long
, float
, double
, boolean
y String
, respectivamente.
1byte numeroByte = scanner.nextByte();2short numeroShort = scanner.nextShort();3int numeroInt = scanner.nextInt();4long numeroLong = scanner.nextLong();5float numeroFloat = scanner.nextFloat();6double numeroDouble = scanner.nextDouble();7boolean booleano = scanner.nextBoolean();8String cadena = scanner.nextLine();