Tag: teclado
Leyendo desde la entrada de teclado con Java usando java.util.Scanner
by egyware on May.14, 2010, under CyP, Java
Hola a todos ![]()
Hoy dia escribire un tutorial o howto (comos sea ¬¬) de como leer datos de desde la entrada de teclado en Java.
La entrada de teclado en Java está dado por la variable in en la clase System. La variable System.in es del tipo java.io.InputStream esta clase permite la entrada de datos de manera bruta (leyendo bytes a bytes
) sinceramente esto puede ser algo engorroso, para eso usamos la clase java.util.Scanner que aparecio en la version Java 1.5. Esta clase su uso es super sencillo para construirla debemos solo pasarle una variable tipo java.io.InputStream osea en este caso System.in
Obteniendo un objeto del tipo java.util.Scanner
//File:LeyendoTeclado.java
//Importando la clase Scanner
java.util.Scanner;
//Creando una clase cualquiera
public class LeuendoTeclado{
//Hacer que la clase sea ejecutable. Agregando el main
public static void main(String args[]){
//Aqui inicializamos un objeto Scanner para leer datos desde teclado
Scanner scan = new Scanner(System.in);
}
}
Como pueden darse cuenta en la función main creamos un nuevo objeto java.util.Scanner
La clase java.util.Scanner tiene muchas funciones utiles, como saber lo que viene despues y obtenerlo
boolean hasNext()
boolean hasNextInt()
boolean hasNextFloat()
etc...
Estas ultimas preguntan si vienen un String, un Int y un Float respectivamente (he incluso si saben inglés se puede deducir facilmente) devuelven true si es verdadero.
String next()
int nextInt()
float nextFloat()
etc...
tambien si sabes inglés puedes saber que hacen (devuelven el siguiente…)
Estas devuelven un String, int y float respectivamente.
Entonces un ejemplo:
//Extracto de solo main
public static void main(String args[]){
//Aqui inicializamos un objeto Scanner para leer datos desde teclado
Scanner scan = new Scanner(System.in);
//devuelve un entero
int a = scan.nextInt();
//devuelve un float
float b = scan.nextFloat();
//devuelve el siguiente String delimitado ' '.Equivalente C a:
//char str[256];
//scanf("%s",str);
String c = scan.next();
//Imprime el entero a
System.out.println(a);
//Imprime el flotante b
System.out.println(b)
//Imprime el String c
System.out.println(c);
}
Bueno esto es todo por hoy Saludos a todos ![]()
Es bueno revizar la documentación de Scanner para más información










