Introducción al Modelado de Procesos de Negocio
teclado
teclado
Pedro Corcuera
Dpto. Matemática Aplicada y
Ciencias de la Computación
Universidad de Cantabria
corcuerp@unican.es
Objetivos
• Crear programas interactivos que lean
datos desde el teclado.
• Usar la clase BufferedReader para leer
datos desde el teclado usando la consola.
• Usar la clase Scanner para leer datos
desde el teclado usando laconsola.
• Usar la clase JOptionPane para leer datos
desde el teclado usando una interfaz
gráfica.
Java
2
Índice
•
•
•
•
•
Streams I/O
Lectura de datos desde teclado
Uso de la clase BufferedReader
Uso de la clase Scanner
Uso de la clase JOptionPane
Java
3
Streams I/O
• Un stream es una secuencia de caracteres o bytes
utilizados para la entrada o salida de unprograma.
• Java proporciona varias clases Stream diferentes de
entrada y salida en la API java.io.
• Los objetos I/O más utilizados son:
System.in (input stream, conectado al teclado)
System.out (output stream, resultados normales en monitor)
System.err (output stream para mensajes de error - monitor)
• Para convertir datos String a otros tipos se usan
clases wrapper.
Java
4Lectura de datos desde teclado
• Tres métodos de lectura:
– Clase BufferedReader (consola)
– Clase Scanner (consola)
– Clase JOptionPane (interfaz gráfica de usuario)
Java
5
Uso de la clase BufferedReader
• Clase BufferedReader
– Se encuentra en el paquete java.io
– Se usa para lectura de datos
Java
6
Pasos para leer datos con BufferedReader
• Añadir la siguiente línea alinicio del código:
import java.io.*;
• Añadir la siguiente instrucción:
BufferedReader dataIn = new BufferedReader( new
InputStreamReader(System.in) );
Java
7
Pasos para leer datos con BufferedReader
• Declarar una variable temporal de tipo String para
almacenar la entrada, e invocar el método readLine()
para leer del teclado. Es necesario escribirlo dentro
de un bloque try-catch:try {
String temp = dataIn.readLine();
} catch( IOException e ){
System.out.println(″Error de lectura″);
}
Java
8
Ejemplo de lectura con BufferedReader
import java.io.*;
public class GetInputFromKeyboard {
public static void main( String[] args ){
BufferedReader dataIn = new BufferedReader(new
InputStreamReader( System.in ) );
String name = "";
System.out.print("Escribe tunombre:");
try{
name = dataIn.readLine();
}catch( IOException e ){
System.out.println("Error!");
}
System.out.println("Hola " + name +"!");
}
}
Java
9
Ejemplo de lectura con BufferedReader
import java.io.BufferedReader;
import java.io.InputStreamReader; import java.io.*;
import java.io.IOException;
public class GetInputFromKeyboard {
public static void main( String[] args ){BufferedReader dataIn = new BufferedReader(new
InputStreamReader( System.in) );
String name = "";
System.out.print("Escribe tu nombre:");
.
.
.
Java
10
Ejemplo de lectura con BufferedReader
• Las líneas
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
indican que deseamos usar las clases
BufferedReader, InputStreamReader yIOException
que están dentro del paquete (package) java.io.
• Estas instrucciones también se pueden escribir como
import java.io.*;
Java
11
Análisis del ejemplo: API de Java
• La interfaz de programación de aplicaciones de Java
(API – Application Programming Interface) contiene
cientos de clases predefinidas que se pueden usar en
los programas.
• Las clases de la API se organizan en lo quese
llaman paquetes (packages) que contienen clases
con un propósito relacionado.
• Se llaman en un programa con
import nombre_package
Java
12
Análisis del ejemplo con BufferedReader
• La sentencia
public class GetInputFromKeyboard {
declara una clase llamada GetInputFromKeyboard
• La siguiente sentencia declara el método main
public static void main( String[] args ){
• La...
Regístrate para leer el documento completo.