-->

lunes, 19 de septiembre de 2016

(JAVA)Entrada de datos. Lectura de datos por teclado en Java. Scanner y BufferedReader

Entrada de datos. Lectura de datos por teclado en Java. 
Scanner y BufferedReader

     La entrada o lectura de datos en Java es uno de los conceptos más importantes y fundamentales al momento de interactuar con el usuario de nuestro programa. La entrada de datos en Java, a diferencia de otros lenguajes es un poco complicada (no demasiado) y existen diferentes formas de hacerlo, unas más complejas que otras. En este artículo veremos dos maneras sencillas de leer datos para nuestro programa en Java, veremos entonces dos formas de leer datos del usuario por teclado. La primera usando las clases BufferedReader e InputStreamReaderambas de la librería java.io y la segunda con la clase Scanner de la librería java.util.

Entrada usando la clase BufferedReader y InputStreamReader.

package entradajava;
  import java.io.BufferedReader;
  import java.io.IOException;
  import java.io.InputStreamReader;

public class EntradaJava {
     public static void main(String[] args) throws IOException
    {
        //Notar que readLine() nos obliga a declarar IOException
        BufferedReader br;

        br = new BufferedReader(new InputStreamReader(System.in));   //Ya tenemos el "lector" 

        //Se pide un dato al usuario
        System.out.println("Por favor ingrese su nombre");

        //Se lee el nombre con readLine() que retorna un String con el dato
        String nombre = br.readLine(); 

        //Se pide otro dato al usuario
        System.out.println("Bienvenido " + nombre + ". Por favor ingrese su edad");

        //Se guarda la entrada (edad) en una variable
        String entrada = br.readLine(); 

        //Nótese que readLine siempre retorna String y la clase BufferedReader...
        //no tiene un método para leer enteros, así que debemos convertirlo.

        //Se transforma la entrada anterior en un entero
        int edad = Integer.parseInt(entrada);

         //Si el usuario ingresó solo números funcionará bien, de lo contrario
        //generará una excepción

         //Operacion numerica con la edad
        System.out.println("Gracias " + nombre + " en 10 años usted tendrá " + (edad + 10) + " años.");
    }
}



Entrada por teclado usando la Clase Scanner


package entradajava2;

   import java.util.Scanner;

public class EntradaJava2 {
     public static void main(String[] args)
    {
        //Se crea el lector
        Scanner sc = new Scanner(System.in); 

        //Se pide un dato al usuario
        System.out.println("Por favor ingrese su nombre");
        
        //Se lee el nombre con nextLine() que retorna un String con el dato
        String nombre = sc.nextLine(); 

        //Se pide otro dato al usuario
        System.out.println("Bienvenido " + nombre + ". Por favor ingrese su edad");

        //Se guarda la edad directamente con nextInt()
        int edad = sc.nextInt(); 

        //Nótese que ya no hubo necesidad de usar parseInt()
        //pues nextInt nos retorna un entero derectamente
        
        //Operacion numerica con la edad
        System.out.println("Gracias " + nombre + " en 10 años usted tendrá " + (edad + 10) + " años."); 
    }
}










1 comentario:

  1. Después de abrir el programa, seleccione Ayuda (seleccione el botón Archivo u Office en la parte superior izquierda y luego Ayuda; o, seleccione el pequeño signo de interrogación en la parte superior derecha de su pantalla) y luego seleccione «Acerca de Microsoft Word, Excel, PowerPoint, etc.»
    https://kevinsgallagher.com/que-version-de-microsoft-office-esta-utilizando-en-este-momento/

    ResponderEliminar