Introdução à entrada do usuário Java

No programa Java, existem três maneiras pelas quais podemos ler as entradas do usuário no ambiente da linha de comandos para obter as entradas do usuário, classe Java BufferedReader, classe Java Scanner e classe Console. Vamos discutir as aulas em detalhes. Usamos a classe Scanner para obter a entrada do usuário. Este programa solicita que o usuário insira um número inteiro, uma sequência e um número flutuante, e ele será impresso no visor. A classe de scanner em java.util está presente para que possamos adicionar este pacote ao nosso software. Primeiro, criamos um objeto Scanner Class e usamos o método Scanner Class.

3 maneiras de entrada do usuário Java

Existem três maneiras de ler a entrada do usuário:

  1. Classe Java BufferedReader.
  2. Classe de Scanner Java.
  3. Usando o console Class.

Essas três classes são mencionadas abaixo, vamos discutir em detalhes:

1. Classe Java BufferedReader

Estende a classe do leitor. BufferedReader lê a entrada do fluxo de entrada de caracteres e armazena em buffer caracteres para fornecer uma leitura eficiente de todas as entradas. O tamanho padrão é grande para o buffer. Quando o usuário faz qualquer solicitação de leitura, a solicitação correspondente vai para o leitor e faz uma solicitação de leitura dos fluxos de caracteres ou bytes, portanto, a classe BufferedReader é agrupada em torno de outros fluxos de entrada, como FileReader ou InputStreamReaders.

Por exemplo:

BufferedReader reader = new BufferedReader(new FileReader(“foo.in”));
BufferedReader can read data line by line using method readLine() method.
BuffredReader can make the performance of code faster.

Construtores

BufferedReader possui dois construtores da seguinte maneira:

1. BufferedReader (leitor de leitor)

Usado para criar um fluxo de caracteres de entrada em buffer que usa o tamanho padrão de um buffer de entrada.

2. BufferedReader (Leitor, tamanho da entrada)

Usado para criar um fluxo de caracteres de entrada em buffer que usa o tamanho fornecido para um buffer de entrada.

Funções
  • int read: É usado para ler um único caractere.
  • int read (char () cbuffer, int offset, int length): É usado para ler caracteres na parte especificada de uma matriz.
  • String readLine (): Usado para ler entrada linha por linha.
  • boolean ready (): Usado para testar se o buffer de entrada está pronto para leitura.
  • salto longo: usado para pular os caracteres.
  • void close (): fecha o buffer do fluxo de entrada e os recursos do sistema associados ao fluxo.

Quando o usuário digita o caractere a partir do teclado, ele é lido pelo buffer do dispositivo e, em seguida, do System.in, passa para o leitor em buffer ou leitor de fluxo de entrada e é armazenado no buffer de entrada.

Código:

import java.util.*;
import java.lang.*;
import java.io.*;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*package whatever //do not write package name here */
class BufferedReaderDemo (
public static void main (String() args) throws NumberFormatException, IOException (
System.out.println("Enter your number");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int t = Integer.parseInt(br.readLine());
System.out.println("Number you entered is: " + t);
System.out.println("Enter your string");
String s = br.readLine();
System.out.println("String you entered is: " + s);
)
)

Resultado:

Programa com leitura de InputStreamReader e BufferedReader:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class BufferedReaderDemo (
public static void main(String args()) throws IOException(
InputStreamReader reader = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(reader);
System.out.println("What is your name?");
String name=br.readLine();
System.out.println("Welcome "+name);
)
)

Resultado:

2. Classe de Scanner Java

A classe java.util.scanner é uma das classes usadas para ler a entrada do usuário a partir do teclado. Está disponível no pacote util. As classes de scanner quebram a entrada do usuário usando o delimitador, que é principalmente espaços em branco por padrão. O scanner possui muitos métodos para ler a entrada do console de muitos tipos primitivos, como double, int, float, long, booleano, curto, byte etc. É a maneira mais simples de obter entradas em java. A classe de scanner implementa interfaces Iterator e Closeable. O scanner fornece nextInt () e muitos métodos de tipo primitivo para ler entradas de tipos primitivos. O método next () é usado para entradas de string.

Construtores
  • Scanner (origem do arquivo): constrói um scanner para ler um arquivo especificado.
  • Scanner (origem do arquivo, String charsetName): constrói um scanner para ler a partir de um arquivo especificado.
  • Scanner (origem InputStream), Scanner (origem InputStream, String charsetName): constrói o scanner para ler a partir de um fluxo de entrada especificado.
  • Scanner (0Readable source): Constrói um scanner para ler a partir de uma fonte legível especificada.
  • Scanner (origem da string): constrói um scanner para ler a partir de uma fonte de string especificada.
  • Scanner (fonte ReadableByteChannel): constrói um scanner para ler a partir de uma fonte de canal especificada.
  • Scanner (fonte ReadableByteChannel, String charsetName): constrói um scanner para ler a partir de uma fonte de canal especificada.
Funções

Abaixo, é mencionado o método para varrer os tipos primitivos da entrada do console através da classe Scanner.

  • nextInt (),
  • nextFloat (),
  • nectDouble (),
  • nextLong (),
  • nextShort (),
  • nextBoolean (),
  • nextDouble (),
  • nextByte (),

Programa para ler da classe Scanner:

Using scanner class.
import java.util.Scanner;
/*package whatever //do not write package name here */
class ScannerDemo (
public static void main (String() args) (
Scanner sc = new Scanner(System.in);
System.out.println("Enter your number");
int t = sc.nextInt();
System.out.println("Number you entered is: " + t);
System.out.println("Enter your string");
String s = sc.next();
System.out.println("String you entered is: " + s);
)
)

Resultado:

3. Usando a classe console

Usando a classe do console para ler a entrada da interface da linha de comandos. Não funciona no IDE.

Código:

public class Main
(
public static void main(String() args)
(
// Using Console to input data from user
System.out.println("Enter your data");
String name = System.console().readLine();
System.out.println("You entered: "+name);
)
)

Resultado:

Artigos recomendados

Este é um guia para Java User Input. Aqui discutimos as três maneiras pelas quais podemos ler a entrada do usuário Java do usuário no ambiente da linha de comandos. Este artigo fornece uma idéia básica de todas as entradas que você pode explorar usando Java. Você também pode consultar o seguinte artigo.

  1. Substituindo em Java
  2. SpringLayout em Java
  3. JFrame em Java
  4. Classe Wrapper em Java