Hay muchas formas de leer desde el teclado, y más concretamente de la entrada estandar (System.in) de Java.
En tu caso, parece ser que te lo están pidiendo mediante el uso de la clase Scanner. Lo primero que debes hacer es echarle un vistazo a la documentación oficial de esa clase: Scanner.
Esa clase implementa todo lo necesario para leer datos de entrada, desde una cadena de texto, un descriptor de fichero, o un flujo de entrada (InputStream). Puedes verlo con detalle simplemente viendo los métodos constructores.
En tu caso, lees desde System.in, que es la entrada estándar (el teclado).
Si observas los métodos que tiene dicha clase, para leer cualquier byte, caracter, entero o cadena, tienes los métodos "next".
En tu ejercicio te piden "leer un número", asi que deberás usar el método "nextInt()":
Código:
1 import java.util.*;
2 /**
3 * Ejercicio de Introducción a la Informática
4 */
5 public class MyClass {
6 /**
7 * Método principal a modificar. Debe leer un número entero y
8 * mostrar en pantalla su valor
9 */
10 public static void main(String[] args) {
11 Scanner input = new Scanner(System.in);
12 System.out.print("Introduce un valor entero: ");
13 int numero = input.nextInt();
14 System.out.print("Has introducido el valor: "+numero);
15
16 }
17 }
Otra alternativa, un poco más elaborada, pero más versátil, pues no restringe la lectura únicamente de enteros, sería haciendo uso de nextLine(), en vez de nextInt():
Código:
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Introduce un valor entero: ");
String entrada = input.nextLine();
int numero = Integer.parseInt(entrada);
System.out.print("Has introducido el valor: "+numero);
En este caso, lees una cadena de texto, y luego la conviertes a entero. Para este caso, deberás validar la entrada antes de guardarla o trabajar con ella en un futuro, pues podría ser el inicio de un bonito bug o de un fallo de seguridad. Lo recomendado para validar la entrada es utilizar expresiones regulares, y la clase Scanner te da opciones para ello.
En cuanto a la última línea, puede sustituirse por cualquiera de estas opciones:
Código:
System.out.println("Has introducido el valor: "+String.valueOf(numero));
System.out.println("Has introducido el valor: "+Integer.toString(numero));
Un saludo.
Marcadores