La entrada de la consola Java tiene los siguientes métodos:
1. Cómo leer JDK 1.4 y versiones anteriores
En JDK 1.4 y versiones anteriores, solo hay una forma de ingresar datos desde la consola: usar System.in para obtener el flujo de entrada del sistema y luego conectarlo al flujo de caracteres para leer los datos del flujo de caracteres. Solo se pueden leer cadenas. Si necesita leer otros tipos de datos, debe convertirlos manualmente. El código es el siguiente:
Copie el código de código de la siguiente manera:
BufferedReader br = nuevo BufferedReader (nuevo InputStreamReader (System.in));
Cadena cadena = nulo;
intentar
{
str = br.readLine();
System.out.println(cadena);
}
captura (IOException e)
{
e.printStackTrace();
}
2. Método de lectura JDK 5.0
A partir de JDK 5.0, la clase java.util.Scanner se agregó a la biblioteca de clases básica. Según su documentación API, esta clase es un escáner de texto que utiliza expresiones regulares para análisis básicos de tipos y cadenas. Usando su constructor Scanner (fuente InputStream), puede pasar el flujo de entrada del sistema System.in y leer datos desde la consola. Canner no solo puede leer cadenas desde la consola, sino también otros siete tipos básicos y dos tipos de números grandes además de char, sin la necesidad de una conversión manual explícita. El código es el siguiente:
Copie el código de código de la siguiente manera:
Escáner escáner = nuevo escáner (System.in);
Cadena cadena = scanner.nextLine();
System.out.println(cadena);
3. Método de lectura JDK 6.0
A partir de JDK 6.0, la clase java.io.Console se agregó a la biblioteca de clases básica, que se utiliza para obtener el dispositivo de consola basado en caracteres asociado con la máquina virtual Java actual. Los datos se pueden leer más fácilmente en la interfaz de la consola de caracteres puros. El código es el siguiente:
Copie el código de código de la siguiente manera:
Consola consola = System.console();
si (consola == nulo)
{
lanzar nueva IllegalStateException ("No se puede usar la consola");
}
Cadena str = console.readLine("consola");
System.out.println(cadena);