Para realizar lecturas de datos por consola en Java debemos de apoyarnos sobre la clase System. Y en concreto sobre System.in. Si accedemos directamente sobre dicha clase, lo que obtendremos serán lecturas de caracteres. Es por ello que tenemos que ver como facilitar esta lectura.
Para realizar una lectura de datos más sencilla y hacerlo mediante cadenas de caracteres (String) debemos de de utilizar un Buffer de lectura. En este caso nos apoyaremos sobre la clase BufferedReader.
Todo código que realice una lectura de streams, en este caso por la consola, se monta mediante wrapping de clases. Es decir, sobre la consola, montamos un input stream (InputStreamReader), y sobre este un Buffer (BufferedReader). Veámos como es la línea de código:
br = new BufferedReader(new InputStreamReader(System.in));
Manejar el buffer es muy sencillo ya que simplemente deberemos de ejecutar lecturas por línea.
sTexto = br.readLine();
System.out.println(sTexto);
Y ¿cuando acabar? Pues deberemos de escoger una palabra que denote que es la última a introducir por la consola. Eso si queremos que el programa no sea infinito. En nuestro caso, no hemos puesto mucha imaginación. Ya que la palabra ha sido “FIN”.
do {
sTexto = br.readLine();
System.out.println(sTexto);
} while(!sTexto.equals("FIN"));