Maneres de Lectura de Dades en Java

Conegui les diferents maneres de llegir l’entrada (dades pel teclat) des de la consola en Java. En Java, hi ha tres formes diferents de llegir l’entrada de l’usuari a l’entorn de línia de comandaments (consola).

Table de contingut

0. Lectura de dades des de teclat

per a recollir dades per teclat fem servir System.console (). readLine () (veure secció 3 d’aquest article | NO TREBALLA EN UN IDE). A l’arribar a aquesta sentència, el programa s’atura i espera que l’usuari introdueixi informació mitjançant el teclat. La introducció de dades acaba amb la pulsació de la tecla INTRO. Una vegada que l’usuari pressiona INTRO, tot el que s’ha teclejat s’emmagatzema en una variable.

Exemple:

class EntradaTexto { public static void main(String args) { String nombre; System.out.print("Por favor, dime tu nombre: "); nombre = System.console().readLine(); System.out.println("Hola " + nombre + ", ¡bienvenido a Java desde Cero!"); }}

Si en lloc de text necessitem dades numèriques, haurem de convertir la cadena introduïda en un nombre amb el mètode adequat. Integer.parseInt () converteix el text introduït per teclat en una dada numèrica, concretament en un nombre sencer.

  • Ho veurem més endavant, però pot revisar: Conversió de tipus de dades en Java

Però com deia no és recomanat si utilitzeu un IDE. No obstant això, és bo conèixer-lo. Ara anem a l’acció! Passem a veure les diferents maneres de llegir dades en Java.

1.Utilizando la Classe buffered Reader

Aquest és el mètode clàssic de Java per llegir dades d’entrada, introduït en JDK 1.0 . Aquest mètode es fa servir embolicant System.in (flux d’entrada estàndard) en un InputStreamReader que està embolicat en un BufferedReader, podem llegir l’entrada de l’usuari en la línia de comandament.

× El millor: L’entrada està emmagatzemada temporalment per a una lectura eficient.
× El pitjor: El codi d’embolcall és difícil de recordar.

Exemple:

// Programa Java para demostrar BufferedReaderimport java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class LecturaDatos { public static void main(String args) throws IOException { //Ingrese datos usando BufferReader BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); // Leyendo datos usando readLine String name = reader.readLine(); // Imprimir la línea de lectura System.out.println(name); }}

Entrada:

Javeros

Sortida:

Javeros
× Nota: Per llegir altres tipus, fem servir funcions com Integer.parseInt (), Double.parseDouble (). Per llegir valors múltiples, utilitzem split ().

2.Utilizando la Classe Scanner

Aquest és probablement el mètode més preferit per prendre dades d’entrada. L’objectiu principal de la classe Scanner és analitzar els tipus primitius i les cadenes amb expressions regulars, però, també es pot usar per a llegir les entrades de l’usuari en la línia d’ordres.

× El millor: Mètodes pràctics per parsejar primitius (nextInt (), nextFloat (), …) des de l’entrada.
× El pitjor: Els mètodes de lectura no estan sincronitzats.

Exemple:

// Programa Java para demostrar el funcionamiento de la clase Scanner en Javaimport java.util.Scanner; class ObtenerEntradaUsuario{ public static void main(String args) { // Usando Scanner para obtener información del usuario Scanner in = new Scanner(System.in); String s = in.nextLine(); System.out.println("Usted ingresó la cadena: "+s); int a = in.nextInt(); System.out.println("Usted ingresó un entero: "+a); float b = in.nextFloat(); System.out.println("Usted ingresó un float: "+b); }}

Entrada i Sortida:

javaUsted ingresó la cadena: java2Usted ingresó un entero: 22,0Usted ingresó un float: 2.0
  • Podeu llegir una mica més sobre classe Scanner en aquest enllaç.

3.Utilizando la classe Console

s’ha convertit en una forma preferida per llegir l’entrada de l’usuari des de la línia d’ordres. A més, es pot utilitzar per llegir una entrada similar a la contrasenya sense fer ressò dels caràcters ingressats per l’usuari (sense mostrar-); la sintaxi de cadena de format també es pot fer servir (com System.out.printf ()).

× El millor: Lectura d’contrasenya sense repetir els caràcters ingressats i els mètodes de lectura estan sincronitzats.
× El pitjor: No funciona en un entorn no interactiu (com en un IDE).

Exemple:

// Programa Java para demostrar el funcionamiento de System.console()// Tenga en cuenta que este programa no funciona en IDEspublic class Sample { public static void main(String args) { // Usar la consola para ingresar datos del usuario String name = System.console().readLine(); System.out.println(name); }}

Explica’ns quin és el teu forma o manera preferida d’entrada i lectura de dades en Java 🙂

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *