Uso del BufferedReader:
Cuando estamos trabajando en un proyecto, programa, etc, necesitamo ingresar las variables que ocuparemos. La forma más fácil para probar que el programa esté bien estructurado, hecho y cohesionado es utilizando los constructores y sus métodos. Así, un constructor con parámetros lo llenamos con datos beta, y luego llamamos el constructor creando un objeto. Para finalizar, ocupamos el método para imprimir y verificamos que esté todo ok
Pero, podemos usar la clase BufferedReader, que nos permite una interacción total con el usuario, es decir, ya no somos nosotros (los programadores) quienes colocamos las variables, sino el usuario.
Un ejemplo es el siguiente:
Como pueden ver, hay líneas de código que imprimen un mensaje al usuario pidiéndole que ingrese algo. La siguiente línea expresa el parseo de dicho dato, y, asignándole a una variable creada lo ingresado por teclado.
Ahora lo importante, ¿cómo mierda se usa?.
Primero, por ser un objeto del tipo BufferedReader que pertenece a una clase BufferedReader debemos importar su uso, esto se logra colocando en el principio, antes de declararla clase las siguientes líneas (cada una de ellas, es por sí sola llamando a la clase BufferedReader):
"import java.io.*;" -> Estoy llamando a TODA las clases del tipo IO.
"import java.io.BufferedReader;" -> Estoy llamando a la clase BufferedReader.
Luego, debemos colocar la siguiente cadena de texto en el public static void main.
"throws IOException"
Esto nos permitirá trabajar con el BR (BufferedReader), para que no nos produzca alguna excepción. Ojo, esto no significa que podemos capturar y modificarlo.
"public static void main(String [] arg) throws IOException"
Y ahora, para finalizar, crear un objeto BR para poder capturar todos los datos que queramos.
"BufferedReader br = new BufferedReader(new InputStreamReader(System.in));"
Si se fijan, es el mismo procedimiento para crear un objeto de una clase cualquiera, es decir:
"nombreClase nombreObjeto = new NombreClase();"
Blah blah, mucha palabrería, ¿y la acción?.
Para poder trabajar con la clase BR debemos guardar en algún sitio lo ingresado por teclado. ¿Cómo carajo logro eso?.
Declaramos variables del tipo de dato que queramos ingresar, es decir, si le pides al usuario que ingrese un número, este debe ser: byte, short, int, long, float o double.
¿Y si es texto?, String o char.
Ok, declaré una variable del tipo "int", que se llama "numero". ¿Cómo guardo en el la cadena de texto ingresada por teclado?. Debemos parsearlo, es decir, convertirla al tipo de dato con el que trabajaremos.
Aquí detallo las líneas de código correspondientes a los parseos.
De String a byte: "Byte.parseByte(br.readLine());"
De String a short: "Short.parseShort(br.readLine());"
De String a int: "Integer.parseInt(br.readLine());"
De String a long: "Long.parseLong(br.readLine());"
De String a float: "Float.parseFloat(br.readLine());"
De String a double: "Double.parseDouble(br.readLine());"
De String a char: "char resp=(char)System.in.read();
System.in.skip(1);"
Oye loco, te faltó de String a String :S.
Como la cadena de texto es texto, es decir, un String, sólo debemos decirle que lea lo ingresado por teclado, y lo guarde:
De String a String: "br.readLine();"
Entonces, ¿podrías explicar el código :P?.
"int a; // Declaro una variable que tiene por nombre a, del tipo entero (int).
System.out.print("Introduzca algun numero: "); // Se imprimirá en el programa dicho mensaje, pidiéndole al //usuario que introduzca un valor numérico.
a = Integer.parseInt(br.readLine());" // El programa leerá la línea ("br.readLine()") y lo parseará al tipo "Int", y // lo guardará en el tipo de dato "Integer" (Int) que tiene por nombre a.
¿Les ha quedado claro?, en caso contrario, puteénme y exijan que le explique con mayor claridad.
Les dejo un ejercicio:
Clase Nota:
Atributos: notaFinal: double
Métodos: Uno que imprima un mensaje en caso de reprobación, es decir, nota menor a 4.0, caso contrario, mensaje de felicitación.
Clase Alumno:
Atributos: nombre: String
edad: int
sexo: char
Métodos: Imprimir, que imprima por pantalla los datos del alumno, y su nota final.
Crea una clase Main, crear con BR 2 objeto del tipo Alumnos, con su respectiva nota final.
OBSERVACIÓN: Usar Herencia.
Analista Programador Computacional
Un blog hecho para la comprensión de las materias.
viernes, agosto 27
miércoles, agosto 18
PEF - 2501
Adjunto link de un archivo rar que contiene el ejercicio de la calculadora que hicimos el martes 17 de agosto, está realizado de 2 formas, uno usando sólo los métodos; el otro usando constructores, métodos accesores, mutadores y métodos correspondientes a las operaciones matemáticas.
-> Link <-
-> Link <-
MDD - 2501
Aquí está el material que pidió el profesor Patricio Salgado, son los libros en formato digital.
-> Link <-
-> Link <-
martes, agosto 17
Suscribirse a:
Comentarios (Atom)