0% encontró este documento útil (0 votos)
7 vistas4 páginas

Uso de la Clase Scanner en Java

La clase Scanner de Java facilita la obtención de datos de diferentes fuentes mediante la conversión de texto a tipos primitivos utilizando expresiones regulares. Un objeto Scanner divide la entrada en tokens utilizando patrones delimitadores predeterminados y los convierte a diferentes tipos con métodos como next(), nextInt() y nextDouble(). El Scanner permite la lectura de datos desde el teclado u otras fuentes mediante métodos como next() y nextLine().

Cargado por

sercas 92
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
7 vistas4 páginas

Uso de la Clase Scanner en Java

La clase Scanner de Java facilita la obtención de datos de diferentes fuentes mediante la conversión de texto a tipos primitivos utilizando expresiones regulares. Un objeto Scanner divide la entrada en tokens utilizando patrones delimitadores predeterminados y los convierte a diferentes tipos con métodos como next(), nextInt() y nextDouble(). El Scanner permite la lectura de datos desde el teclado u otras fuentes mediante métodos como next() y nextLine().

Cargado por

sercas 92
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UT02-09

- La Clase Scanner
La Clase Scanner
La clase Scanner nos facilita mucho la tarea de obtención de datos desde diferentes fuentes.
Realmente escanea texto de forma simple y lo transforma a tipos primitivos usando expresiones regulares.
Un Scanner parte su entrada en tokens usando patrones delimitados (por defecto por espacios en blanco y retornos de carro).
Los tokens resultantes los convierte a diferentes tipos usando diferentes métodos next.
Para poder utilizar esta clase, se debe incluir esta instrucción:

import [Link];

Una de las utilidades de la clase Scanner es la obtención de datos desde el teclado finalizando el valor introducido o la linea con un “enter”.

Ejemplo 02-09-01 : Lectura simple con cadenas de Texto.


//Ejemplo 02-09-01. Lectura simple con cadenas de Texto.
import [Link]; // se importa la clase Scanner

class ejemplo020901{
public static void main(String[] args){
String variableString;
Scanner entrada = new Scanner([Link]);
//Se declara e inicializa una instancia de la clase Scanner.
//Se indica como entrada la entrada estandar del sistema.
[Link]("Ingrese una palabra : ");
variableString = [Link]();
[Link]("Texto ingresado: " + variableString );
}
}

En el código anterior se importa la clase Scanner.


Ya dentro del main se declara una instancia de la misma llamada “entrada” y se inicializa pasando como parámetro un objeto InputStream , el cual es devuelto por la
clase System con ayuda de su método in.
Luego se visualiza un aviso correspondiente del tipo de datos que se va a pedir y se guarda la palabra que se teclee en la variable “variableString”, hasta que se
teclee un enter.
Y todo se logra por medio del objeto de tipo Scanner llamado “entrada” y su método next().
Ejemplo 02-09-02 : Probar el ejemplo anterior. Probar a meter tu nombre y apellidos, ¿Qué sucede?.
Ejercicio Ejercicio 02-09-01 : Hacer otro programa que lea la base y la altura de un rectácgulo como dos textos, los transforme a numeros en coma flotante y nos
ofrezca como resultado el área.

Variaciones del método next


El metodo “next()” cambia si queremos trabajar con otros tipos de datos más allá de una palabra o texto.
Debes indicar que estas manipulando enteros, lo mismo con “float”, “double”, “byte”, etc ó líneas completas.
next()
nextLine() (Para leer hasta final de linea, Ej. Nombre Apellido)
nextInt()
nextFloat()
nextDouble()
Recomendación : Leer cadenas/líneas de caracteres y después transformar al tipo que se desee.

Ejemplo
Ejemplo 02-09-03LecturaEnteros : Ejemplo simple con lectura directa de Números enteros.

//Ejemplo con Números enteros


Scanner scan = new Scanner([Link]);
int num1 = 0;
int num2 = 0;
[Link]("Inserta el primer numero: ");
num1 = [Link]();
[Link]("Inserta el segundo numero: ");
num2 = [Link]();
int resultado = num1 + num2;
[Link]("El resultado de sumar " + num1 + " y " + num2 + " es: " + resultado);

//Otro ejemplo con Números


//Ejemplo de la clase Scaner con números
//Seguimos la recomendación de leer cadenas y transformar
[Link]("\nPruebas de lecturas de números \n");
Scanner teclado = new Scanner([Link]);
int num1 = 0;
double num2 = 0.0;
String cadenaAuxiliar;
[Link]("Inserta el primer numero: ");
cadenaAuxiliar = [Link]();
num1 = [Link](cadenaAuxiliar);
[Link]("Inserta el segundo numero: ");
cadenaAuxiliar = [Link]();
num2 = [Link](cadenaAuxiliar);
double resultado = num1 + num2;
[Link]("El resultado de sumar " + num1 + " y " + num2 + " es: " + resultado);

Ejercicio 02-09-02Multiplos : Basandote en el código del ejemplo anterior, pedir dos numeros enteros e indicar si el primero es múltiplo del segundo.

La Clase Scanner
Leer más:
[Link]
[Link]
Ejercicio 02-09-03Diametro : Hacer otro programa que lea el diámetro de un círculo como número en coma flotante y nos ofrezca como resultado el área.
Ejercicio 02-09-04PideNombre : Hacer otro programa que lea tu nombre completo y visualice un saludo personalizado.
Ejemplo más complejo. Usos avanzados de Scanner.
Ejemplo 02-09-04SeparadorScan : Probar el ejemplo.

//Ejemplo más complejo de : [Link]


//The scanner can also use delimiters other than whitespace. This example reads several items in from a string:
String input = "1 fish 2 fish red fish blue fish";
Scanner s = new Scanner(input).useDelimiter("\\s*fish\\s*");
[Link]([Link]());
[Link]([Link]());
[Link]([Link]());
[Link]([Link]());
[Link]();
//prints the following output:
// 1
// 2
// red
// blue

Como podrás observar :


Se altera la entrada de información.
Se cambia el delimitador para la entrada.

Ejemplo020905ScanNumeros
Ejemplo020905ScanNumeros

//Ejemplo de la clase Scaner con números


//Seguimos la recomendación de leer cadenas y transformar
[Link]("\nPruebas de lecturas de números \n");
Scanner teclado = new Scanner([Link]);
int num1 = 0;
double num2 = 0.0;
String cadenaAuxiliar;
[Link]("Inserta el primer numero (Entero): ");
cadenaAuxiliar = [Link]();
num1 = [Link](cadenaAuxiliar);
[Link]("Inserta el segundo numero (Doble): ");
cadenaAuxiliar = [Link]();
num2 = [Link](cadenaAuxiliar);
[Link]("Introduce un caracter : ");
cadenaAuxiliar = [Link]();
[Link]("El caracter leido es : "
+ [Link](0));
double resultado = num1 + num2;
[Link]("El resultado de sumar " + num1 + " y "
+ num2 + " es: " + resultado);

Ejericcio020905PedirDatosPersonales
Ejercicio 02-09-05PedirDatosPersonales :
Hacer un programa que pida tus datos personales y los almacene en variables adecuadas :
Nombre, Apellidos, DNI, edad, altura, Profesión, Telefono, email, Dirección postal, Codigo Postal, Ciudad y Provincia.
Visualiza estos datos en forma de ficha utilizando los formatos del printf como si fueras a imprimir un DNI o ficha personal de una empresa.
Intenta que salga algo parecido a como aparece en los ejemplos en la medida de lo que puedas.
Claramente no imprimiras ni colores si gráficos, pero el aspecto de la salida debe de ser parecido a los ejemplos.

Retorno
Unidad 02. Identificacion de Elementos
Indice General de la Asignatura. Vuelta al Indice General de Apuntes de Asignaturas.

UT02-09 - La Clase Scanner - Andrés Ramos González - IES Alonso de Avellaneda

Este obra está bajo una licencia: Creative Commons Reconocimiento-CompartirIgual 3.0

También podría gustarte