Scanner
Um Scanner serve para ler um input. A sintaxe é:
Scanner sc = new Scanner (System.in);
/...
sc.close();
É importante fechar o Scanner antes de fechar o main.
=============
Java End-of-file
No caso desse exercÃcio que pede para ler linha a linha (sem delimitação prévia de quantas linhas totais), adicionando o número de cada linha antes do input (o input é uma String), achei a seguinte solução:
- Criar um new Scanner
- Criar um integer i que inicia em 1
- Criar um while que passa um Scanner com o método .hasNext()
- Imprimir o input com System.out.println(i + " " + sc.nextLine());
^ o .nextLine serve para o programa esperar uma linha para continuar a rodar. Sem o .nextLine(), o programa roda eternamente depois do primeiro input.
- Somar +1 ao integer para voltar ao inÃcio do loop.
- Fechar o Scanner.
O código final fica assim, dentro da main:
Scanner sc = new Scanner(System.in);
int i = 1;
while(sc.hasNext()){
System.out.println(i + " " + sc);
i++;
}
sc.close();
============
Essa publicação faz parte de uma série de exercÃcios resolvidos em Java no HackerRank. Acesse a série completa:
- HackerRank #6 | Scanner e End-of-file
- HackerRank #7 | Int to String / String to Int
- HackerRank #8 | Date and Time
- HackerRank #9 | Static Initializer Block
- HackerRank #10 | Currency Formatter
- HackerRank #11 | DataTypes
- HackerRank #12 | Strings Introduction
- HackerRank #13 | Substring Comparisons
- HackerRank #14 | Abstract Class
- HackerRank #18 | BigInteger
- HackerRank #19 | Loops II
- HackerRank #20 | String Reverse
- HackerRank #23 | Instanceof keyword
- HackerRank #26 | Generics
- HackerRank #27 | 1D Array
- HackerRank #28 | Anagrams
- HackerRank #33 | Arraylist
- HackerRank #34 | Exception Handling Try / Catch
- HackerRank #36 | Exception Handling
- HackerRank #37 | List
- HackerRank #38 | SubArray
- HackerRank #39 | HashSet
- HackerRank #40 | Java Dequeue
Top comments (0)