Scanner Class
Parte da seção Fundamentos do Journey de Java da Coddy — lição 35 de 73.
Até agora, armazenamos valores que pensamos em variáveis. Programas geralmente não funcionam dessa forma. Recebemos valores de uma fonte externa, um usuário por exemplo.
Em Java, obter entrada de um usuário é feito usando a classe Scanner. Esta classe fornece métodos para ler diferentes tipos de entrada, como inteiros, números de ponto flutuante e strings.
Para usar a classe Scanner, você primeiro precisa criar uma instância dela e associá-la ao fluxo de entrada padrão System.in. Veja como fazer:
Scanner scanner = new Scanner(System.in);Uma vez que você tenha um objeto Scanner, você pode usar seus métodos para ler a entrada.
Aqui estão alguns métodos comumente usados:
nextInt(): Lê um inteiro.nextDouble(): Lê um double.nextLine(): Lê uma linha de texto (string).
Aqui está um exemplo de como obter entrada do usuário:
Scanner scanner = new Scanner(System.in);
System.out.print("Enter your age: ");
int age = scanner.nextInt();
System.out.println("Your age is: " + age);Neste exemplo, o programa solicita ao usuário que insira sua idade, lê o inteiro usando nextInt() e, em seguida, o imprime de volta no console.
Depois que você terminar com o Scanner, é uma boa prática fechá-lo usando scanner.close() para liberar os recursos associados a ele.
Desafio
InicianteEscreva um programa que obtém entrada do usuário (o nome dele), e então exibe Hello, seguido pelo nome inserido pelo usuário.
Por exemplo, se o usuário digitar Bob, a saída esperada é Hello, Bob.
Você precisará:
- Criar um objeto
Scannerpara ler a entrada. - Solicitar que o usuário digite o nome dele usando exatamente:
Enter your name: - Ler o nome do usuário usando o método apropriado do
Scanner. - Imprimir
Hello,e a variável armazenada no final.
Folha de consulta
Para obter entrada do usuário em Java, use a classe Scanner:
Scanner scanner = new Scanner(System.in);Métodos comuns do Scanner:
nextInt(): Lê um inteironextDouble(): Lê um doublenextLine(): Lê uma linha de texto (string)
Exemplo de leitura de entrada do usuário:
Scanner scanner = new Scanner(System.in);
System.out.print("Enter your age: ");
int age = scanner.nextInt();
System.out.println("Your age is: " + age);Feche o scanner quando terminar para liberar recursos:
scanner.close();Experimente você mesmo
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// Criar um objeto Scanner
Scanner scanner = new Scanner(System.in);
// Solicitar que o usuário insira seu nome
// Ler o nome do usuário
// Imprimir a mensagem de saudação
}
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operators Part 1
Arithmetic OperatorsModulo OperatorIncrement/DecrementPost Increment/DecrementArithmetic ShortcutsComparison OperatorsString Comparison5Operators Part 2
Logical Operators Part 1Logical Operators Part 2Recap - Simple LogicLogical Operators Part 3Logical Operators Part 43Variables Part 2
ConstantsNaming ConventionsRecap - Initialize VariablesType Casting Part 1Type Casting Part 26Decision Making
If StatementIf - ElseSwitch StatementTernary OperatorRecap - If ElseNested If - Else