ed-b1 instalación y uso de entornos

UT 4: el lenguaje java

4.Entrada/Salida básica

eugeniaperez.es

UT 4: el lenguaje java

4. Entrada/Salida básica

INTRODUCCIÓN

Permite hacer programas algo más útiles que sean capaces de recibir una entrada variable en el momento de ejecución.

De esa forma podemos hacer que el mismo programa sirva para distintos parámetros, sin necesidad de reescribir el programa.

eugeniaperez.es

4. Entrada/Salida básica

conversión de string a otros tipos

Lo que se lee como argumento o por consola está en formato String:

  • Si necesitamos convertir a número:

eugeniaperez.es

int number = Integer.parseInt(args[0]);
short number = Short.parseShort(args[1]);
float number = Float.parseFloat(args[2]);

Argumentos recibidos. Empiezan en 0 y son correlativos. Van separados por un ' '

UT 4: el lenguaje java

4. Entrada/Salida básica

conversión de string a otros tipos

Lo que se lee como argumento o por consola está en formato String:

  • Si necesitamos convertir a boolean:

eugeniaperez.es

boolean booleano = Boolean.parseBoolean(args[3]);

¿Y si necesitamos convertir a fecha?

Utilizaremos el SimpleDateFormat

UT 4: el lenguaje java

4. Entrada/Salida básica

¿Cómo recibimos argumentos en un programa...?

  • A través de argumentos.
  • Simplemente solicitando al usuario que introduzca valores en tiempo de ejecución.

eugeniaperez.es

UT 4: el lenguaje java

4. Entrada/Salida básica

paso de argumentos

En el momento de ejecutar el programa se le pasan unos valores al mismo: argumentos ,y son precisamente los que se asignan en la variable args de un programa principal:

eugeniaperez.es

public static void main( String[] args )
{
   System.out.println( "Hello World!" );
        
}

UT 4: el lenguaje java

4. Entrada/Salida básica

paso de argumentos

Esa variable args es un array de Strings. Es una estructura donde se guardan un conjunto de valores indexados numéricamente desde 0:

eugeniaperez.es

args

args[0]

UT 4: el lenguaje java

4. Entrada/Salida básica

paso de argumentos por consola

A la hora de ejecutar un programa, se le pueden pasar argumentos, por consola sería así:

  

 

eugeniaperez.es

UT 4: el lenguaje java

4. Entrada/Salida básica

paso de argumentos POR CONSOLA

Al ejecutar por consola:

Ahí se pasan varios tipos de argumentos. Java los captura todos como String, y los almacena así:

eugeniaperez.es

java NombreClase “hola” 34  true 34.5
args[0] es “hola”
args[1] es “34”
etc…

Si accedemos por el índice:

UT 4: el lenguaje java

4. Entrada/Salida básica

paso de argumentos en eclipse

Para incluir argumentos en Eclipse antes de llevar a cabo la ejecución se usan la opción Run Configurations:

  • Menú Run As> Run configurations -> Program arguments:

 

eugeniaperez.es

UT 4: el lenguaje java

4. Entrada/Salida básica

paso de argumentos en eclipse

Descarga el proyecto del repositorio  ED.UT4.E/S.Argumentos :

Con Maven

https://eugenia_perez@bitbucket.org/eugenia_perez/ed.ut4.e-s.argumentos.git

Sin Maven

https://eugenia_perez@bitbucket.org/eugenia_perez/ed.ut4.e-s.argumentos2.git

  • Usuario: entornos_desarrollo
  • Password: Entornos

 

eugeniaperez.es

UT 4: el lenguaje java

4. Entrada/Salida básica

lectura de valores por consola

Este es la segunda forma de que el programa reciba valores o parámetros desde el exterior, solicitándolos al usuario:

  1. Sacar un mensaje por pantalla solicitando un dato.
  2. Usar alguna clase específica para la lectura de datos por pantalla
  3. Tomar el dato y convertirlo si es preciso.

 

eugeniaperez.es

UT 4: el lenguaje java

4. Entrada/Salida básica

lectura de valores por consola

Existen distintas librerías para leer datos por pantalla. Veamos un par: 

  • Console
  • Scanner

 

 

 

eugeniaperez.es

UT 4: el lenguaje java

4. Entrada/Salida básica

lectura de valores por consola

Console

Utilizando la clase Console, creamos una instancia y ya podemos leer lo que el usuario introduce por teclado:

 

eugeniaperez.es

UT 4: el lenguaje java

Console consola = System.console();
String lectura;
lectura = consola.readLine();

La clase Console es del paquete java.io, amacena dispositivos de e/s. Por lo tanto tendremos que importarlo: import java.io.*;

4. Entrada/Salida básica

lectura de valores por consola

Scanner

Nos permite la misma funcionalidad que Console y además es capaz de leer distintos tipos

 

eugeniaperez.es

UT 4: el lenguaje java

Scanner readFromConsole = new Scanner(System.in);
String line = "";
		
System.out.println("Enter a byte:");
line = readFromConsole.nextLine();
byte simpleByte = Byte.parseByte(line);
System.out.println("You've introduced: " + simpleByte);

Scanner está incluida en java.util,

igualmente tenemos que importarlo:

import java.util.Scanner;

4. Entrada/Salida básica

lectura de valores por consola

Scanner

Permite leer directamente en función del tipo:

 

eugeniaperez.es

UT 4: el lenguaje java

Scanner readFromConsole = new Scanner(System.in);
int edad;
float temperatura;
		
System.out.println("Por favor, introduce una temperatura con decimales (,): ");
temperatura = scan.nextFloat();
System.out.println("Por favor, introduce tu edad: ");
edad = scan.nextInt();

4. Entrada/Salida básica

lectura de valores por consola en eclipse

Descarga el proyecto del repositorio  ED.UT4.E/S.Entrada :

Con Maven:

https://eugenia_perez@bitbucket.org/eugenia_perez/ed.ut4.e-s.entrada.git

Sin Maven:

https://eugenia_perez@bitbucket.org/eugenia_perez/ed.ut4.e-s.entrada2.git

  • Usuario: entornos_desarrollo
  • Password: Entornos

 

eugeniaperez.es

UT 4: el lenguaje java

UT4. 4 Entrada/Salida

By eugenia_perez

UT4. 4 Entrada/Salida

  • 1,189