Uso do Scanner[RESOLVIDO]

2 respostas
ceceu

Pessoal gostaria de saber, o que vem a ser entrada padrão pelo Scanner?

seria :

Scanner input = new Scanner(System.in);

int numero = input.nextInt();

Isso seria uma entrada padrão ou não ?

aguardo resposta.

2 Respostas

ViniGodoy

A entrada padrão é o System.in, e o parâmetros args[] que vem no main.

Ela permite a entrada de dados via shell, ou seja, via o console do DOS ou do Linux. Como por exemplo:

java -jar qualquerCoisa.java < arquivo.txt; //Isso vai pro System.in java -jar qualquerCoisa.java Vinicius; //O texto "Vinicius" vai para o args[0]

O scanner é uma classe utilitária que varre algum tipo de input, em busca de expressões regulares. A expressão mais comum é a quebra de linha. Se você usa-lo na entrada padrão, ele aguardará que o usuário digite a entrada, até que haja uma quebra de linha:

Scanner scan = new Scanner(System.in); //Associa o scanner a entrada padrão String texto = scan.nextLine(); //Lê da entrada padrão até que uma quebra de linha apareça.

Note que as classes tem responsabilidades diferentes. Você poderia usar o scanner, por exemplo, para ler as linhas de um arquivo:

Scanner scan = new Scanner(new File("arquivo.txt")); List<String> linhas = new ArrayList<String>(); while (scan.hasNextLines()) { linhas.add(scan.nextLine()); } scan.close();

Da mesma forma que poderia usar a entrada padrão associada a outra coisa.

ceceu

ceceu:
Pessoal gostaria de saber, o que vem a ser entrada padrão pelo Scanner?

seria :

Scanner input = new Scanner(System.in);

int numero = input.nextInt();

Isso seria uma entrada padrão ou não ?

aguardo resposta.

muito bem explicado, obrigado pela ajuda.

Criado 27 de agosto de 2009
Ultima resposta 27 de ago. de 2009
Respostas 2
Participantes 2