Академический Документы
Профессиональный Документы
Культура Документы
Java Scanner para lectura de datos Java Scanner para lectura de datos
La clase Scanner est disponible a
partir de Java 5 y facilita la lectura de
Su experto- en
Llmenos lo ayudaremos
anuncios online
a encontrar
est a datos en los programas Java.
Primero veremos varios ejemplos...
Regstrese hoy
la estrategia
un llamado depara
distancia.
el xito.
Matrices en Java
Un array en Java
puede tener ms de
La clase Scanner est disponible a partir de Java 5 y facilita la lectura de datos en los programas Java. una dimensin. El
caso ms general son
Primero veremos varios ejemplos de lectura de datos en Java con Scanner y despus explicaremos en detalle como los arrays
funciona. bidimensionales tambin llamados
matrices o tablas ....
Para utilizar Scanner en el programa tendremos que hacer lo siguiente:
Ejemplos de Expresiones Regulares
1. Escribir el import
en Java
La clase Scanner se encuentra en el paquete java.util por lo tanto se debe incluir al inicio del programa la instruccin: Una expresin regular define un
patrn de bsqueda para cadenas de
import java.util.Scanner; caracteres. La podemos utilizar para
comprobar si una cadena contiene ...
2. Crear un objeto Scanner
Java ArrayList.
Tenemos que crear un objeto de la clase Scanner asociado al dispositivo de entrada.
Estructura dinmica
Si el dispositivo de entrada es el teclado escribiremos: de datos
DECLARACIN Y
Scanner sc = new Scanner(System.in); CREACIN DE UN
ARRAYLIST De forma
Se ha creado el objeto sc asociado al teclado representado por System.in general un ArrayList en Java se crea
de la siguiente forma: ArrayList
Una vez hecho esto podemos leer datos por teclado. nombreArray = new...
Ejemplos de lectura:
Java Ejercicios Bsicos Resueltos 2
Para leer podemos usar el mtodo nextXxx() donde Xxx indica en tipo, por ejemplo nextInt() para leer un entero, Java Ejercicios Bsicos estructura
secuencial Relacin N 2: Ejercicios
nextDouble() para leer un double, etc.
4, 5, 6 y 7 Ejercicio 4: Programa que
lea una cantidad de grados c...
Ejemplo de lectura por teclado de un nmero entero: Java Ejercicios Bsicos de Arrays
Resueltos 1
int n; Relacin N 1: Ejercicios 1 y 2 1.
System.out.print("Introduzca un nmero entero: "); Calcular la media de una serie de
n = sc.nextInt(); nmeros que se leen por teclado.
Programa Java que lea por teclado ...
Mtodos en Java
Ejemplo de lectura de un nmero de tipo double:
Un mtodo en Java es un conjunto
double x; de instrucciones definidas dentro de
una clase, que realizan una
System.out.print("Introduzca nmero de tipo double: "); determinada tarea y a las que
x = sc.nextDouble(); podemos...
}
Participar en este sitio
Google Friend Connect
Miembros(85) Ms
Si introducimos la cadena:
12 20.001 Lucas w
12
20.001
Lucas
w
A continuacin, utilizando los mtodos que proporciona la clase Scanner se puede acceder a esos tokens y trabajar con
ellos en el programa.
Ya hemos visto el mtodo nextXxx(). Adems la clase Scanner proporciona otros mtodos, algunos de los mtodos ms
usados son:
METODO DESCRIPCIN
nextXxx() Devuelve el siguiente token como un tipo bsico. Xxx es el tipo. Por
ejemplo, nextInt() para leer un entero, nextDouble para leer un double,
etc.
next() Devuelve el siguiente token como un String.
nextLine() Devuelve la lnea entera como un String. Elimina el final \n del buffer
hasNext() Devuelve un boolean. Indica si existe o no un siguiente token para
leer.
hasNextXxx() Devuelve un boolean. Indica si existe o no un siguiente token del tipo
especificado en Xxx, por ejemplo hasNextDouble()
useDelimiter(String) Establece un nuevo delimitador de token.
Es decir, cuando en un programa introducimos un datos y pulsamos el intro como final de entrada, el carcter intro
tambin pasa al buffer de entrada.
n = sc.nextInt();
El mtodo nextLine() extrae del buffer de entrada todos los caracteres hasta llegar a un intro y elimina el intro del buffer.
En este caso asigna una cadena vaca a la variable nombre y limpia el intro. Esto provoca que el programa no funcione
correctamente, ya que no se detiene para que se introduzca el nombre.
Solucin:
Se debe limpiar el buffer de entrada si se van a leer datos de tipo carcter a continuacin de la lectura de datos
numricos.
sc.nextLine();
Lo podemos comprobar si cambiamos el orden de lectura del ejemplo y leemos el nombre al final:
import java.util.Scanner;
public class JavaApplication335 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String nombre;
double radio;
int n;
System.out.print("Introduzca el radio de la circunferencia: ");
radio = sc.nextDouble();
System.out.println("Longitud de la circunferencia: " + 2*Math.PI*radio);
System.out.print("Introduzca un nmero entero: ");
n = sc.nextInt();
System.out.println("El cuadrado es: " + Math.pow(n,2));
System.out.print("Introduzca su nombre: ");
nombre = sc.nextLine(); //leemos el String despus del double
System.out.println("Hola " + nombre + "!!!");
}
}
Si lo ejecutamos obtendremos:
Introduzca el radio de la circunferencia: 34
Longitud de la circunferencia: 213.62830044410595
Introduzca un nmero entero: 3
El cuadrado es: 9.0
Introduzca su nombre: Hola !!!
import java.util.Scanner;
public class JavaApplication335 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String nombre;
double radio;
int n;
System.out.print("Introduzca el radio de la circunferencia: ");
radio = sc.nextDouble();
System.out.println("Longitud de la circunferencia: " + 2*Math.PI*radio);
System.out.print("Introduzca un nmero entero: ");
n = sc.nextInt();
System.out.println("El cuadrado es: " + Math.pow(n,2));
sc.nextLine();
System.out.print("Introduzca su nombre: ");
nombre = sc.nextLine();
System.out.println("Hola " + nombre + "!!!");
}
}
Si quieres ver ms ejemplos de entrada de datos en Java con Scanner los tienes en este enlace Ejercicios Bsicos en Java
62 comentarios:
Buen Post!
Responder
lol
Responder
6R3/\7
Responder
Responder
Enrique 17 de septiembre de 2013, 22:39
Responder
Respuestas
Responder
ayudenme
Responder
Muchas gracias!
Responder
Pff!! tienes talentoo para esto! nunca v un Blog como este! sigue as, pon ms temas por fa (:
Responder
Responder
Respuestas
Responder
Responder
Responder
Annimo 17 de octubre de 2013, 23:06
Hola gracias por la informacin. Tengo una duda en que casos hay la necesidad de usar ms de un objeto Scanner.
Responder
Respuestas
Por ejemplo, cuando vas a leer datos por teclado y adems quieres leer el contenido de un fichero de texto.
Puedes usar un objeto Scanner para cada cosa.
Responder
Responder
Responder
Responder
Gracias, tena problemas con un nextLine() que al parecer no se ejecutaba, con esta info lo pude resolver.
Responder
Responder
Responder
Respuestas
Responder
Responder
Responder
Responder
Respuestas
Responder
Grande!!! Me ayud mucho ya que estaba leyendo datos y strings y no entenda por qu se saltaba el string :-D
Responder
Respuestas
Responder
hola muy buen post, oye tengo una duda cuando se usa br en cambio de sc para que es??
Responder
Responder
buenaa me yudooo
Responder
Respuestas
Responder
nombre=sc.next();
Responder
Responder
Respuestas
Responder
Responder
Otra opcin (para el problema con los nextInt() ) sera usar por ejemplo:
int x = Integer.parseInt(sc.nextLine());
De esta forma te lee la linea entera (descartando el retorno de carro) y te lo transforma a un int.
Responder
Aaron muoz 31 de mayo de 2015, 2:33
si declaro una variable int, y en la consola se me pide un entero; pero si escribo cualquier otra cosa me truena el programa,
metiendole un try- catch me permite correrlo pero se para el programa, si yo quisiera meterlo en un ciclo y terminar el
programa hasta que se me ingrese un entero. cmo podria hacerlo? algna pista? Gracias.
Responder
Respuestas
Responder
Responder
Respuestas
Responder
Responder
Respuestas
Responder
Unknown 14 de octubre de 2015, 13:53
Responder
Responder
Aadir comentario
Introduce tu comentario...
LICENCIA