QUE
ES SCANNER EN JAVA
La clase Scanner está disponible a partir de Java 5 y
facilita la lectura de datos en los programas Java.
Primero veremos varios ejemplos de lectura de datos en Java
con Scanner y después explicaremos en detalle como funciona.
Para utilizar Scanner en el programa tendremos que hacer lo
siguiente:
1. Escribir el import
La clase Scanner se encuentra en el paquete java.util por
lo tanto se debe incluir al inicio del programa la instrucción:
import java.util.Scanner;
2. Crear un objeto Scanner
Tenemos que crear un objeto de la clase Scanner asociado al
dispositivo de entrada.
Si el dispositivo de entrada es el teclado escribiremos:
Scanner sc = new Scanner(System.in);
Se ha creado el objeto sc asociado al teclado representado
por System.in
Una vez hecho esto podemos leer datos por teclado.
Ejemplos de lectura:
Para leer podemos usar el método nextXxx() donde Xxx indica
en tipo, por ejemplo nextInt() para leer un entero, nextDouble() para leer un
double, etc.
Ejemplo de lectura por teclado de un número entero:
int n;
System.out.print("Introduzca un número entero:
");
n = sc.nextInt();
Ejemplo de lectura de un número de tipo double:
double x;
System.out.print("Introduzca número de tipo double:
");
x = sc.nextDouble();
Ejemplo de lectura de una cadena de caracteres:
String s;
System.out.print("Introduzca texto: ");
s = sc.nextLine();
Ejemplo de programa Java con lectura de datos con Scanner:
El programa pide que se introduzca el nombre de la persona
y lo muestra por pantalla. A continuación lee por teclado el radio de una
circunferencia de tipo double y muestra su longitud. Además lee un entero y
muestra su cuadrado.
import java.util.Scanner;
public class Main {
public static
void main(String[] args) {
Scanner sc
= new Scanner(System.in); //crear un
objeto Scanner
String
nombre;
double
radio;
int n;
System.out.print("Introduzca su nombre: ");
nombre =
sc.nextLine(); //leer un String
System.out.println("Hola " + nombre + "!!!");
System.out.print("Introduzca el radio de la circunferencia:
");
radio =
sc.nextDouble(); //leer un double
System.out.println("Longitud
de la circunferencia: " + 2*Math.PI*radio);
System.out.print("Introduzca un número entero: ");
n =
sc.nextInt(); //leer un entero
System.out.println("El cuadrado es: " + Math.pow(n,2));
}
}
Fuente:http://puntocomnoesunlenguaje.blogspot.com.co/2012/08/java-scanner.html
Clase scanner en Java
Publicado el 2 septiembre, 2010 por emonteblack
Java tiene un metodo llamado System.in, la cual obtiene la
informacion de usuario. Sin embargo, Sytem.in no es tan simple como System.out.
La razon porque no es tan facil es porque System.in solo lee la informacion en
bytes. Bytes no nos sirve de mucho ya que los programas usualmente trabajan con
valores de otro tipo (integrales, Strings, bool, etc). Para solucionar este
problema usamos la clase Scanner. La clase Scanner esta diseñado para leer los
bytes y convertirlo en valores primitivos (int, double, bool, etc) o en valores
String.
Acontinuacion se detalla el funcionamiento de esta clase:
Primero tiene que crear un objeto Scanner y conectarlo con
System.in
Scanner teclado = new Scanner(System.in);
Veamos este codigo por partes.La primera parte:
Scanner teclado
Este codigo declara una variable llamado teclado. El tipo
de data de esta variable es Scanner. Ya que Scanner es una clase, la variable
teclado es un objeto de la clase Scanner.
La segunda parte:
= new Scanner(System.in);
Lo primero que vemos es el simbolo =, lo cual esta
asignando un valor a la variable teclado. El valor es Scanner(System.in) que en
palabras comunes esta diciendo que el valor de teclado es lo que System.in
tenga. Osea, cuando un usuario presiona una tecla, la computadora convierte esta
informacion en bytes. Estos bytes son guardados en el objeto System.in, y por
ultimo son asignados a la variable teclado. Despues del simbolo = vemos la
palabra clave new lo cual crea un nuevo objeto en la memoria, el tipo de objeto
que creara es Scanner(System.in), basicamente esta reservando memoria en la
computadora para que se pueda guardar la informacion de System.in.
A continuacion el
siguiente ejemplo para dar mas claridad:
int edad;
Scanner teclado = new Scanner(System.in);
System.out.println(“Que edad tienes”);
edad = teclado.nextInt();
Veamos paso a paso que es lo que significa cada linea:
int edad :
Estamos declarando una variable int llamada edad la cual va
a almacenar un numero.
Scanner teclado = new Scanner(System.in); :
Estamos declarando una variable Scanner, la cual va
almacenar la informacion que el usuario introduce.
System.out.println(“Cual es tu edad”); :
Estamos usando el metodo println para preguntar al usuario
por su edad.
edad = teclado.nextInt(); :
Estamos usando la variable teclado para obtener la
informacion del usuario, luego convertimos los bytes en int con el metodo
nextInt, y por ultimo estamos pasando el valor int a la variable edad
Existen varios metodos de la clase Scanner para convertir
bytes en valores que sean mas utiles. Siguiente voy a mostrar una lista de los
metodos mas comunes de la clase Scanner para convertir bytes en otros valores.
Metodos:
nextByte
nextDouble
nextFloat
nextInt
nextLine
nextLong
Fuente:https://principiosjava.wordpress.com/2010/09/02/clase-scanner-en-java/
No hay comentarios:
Publicar un comentario