Um problema que pode ser bem comum para quem está começando no java e usando a classe Scanner para capturar dados do teclado é quando, ao inserirmos o método nextLine() após métodos "irmãos" como next(), nextInt(), nextDouble(), etc... O nosso nextLine() simplesmente ignora a entrada do teclado do usuário e vai para a próxima linha de código.
Um exemplo para este caso é o código mostrado logo abaixo:
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in );
int inteiro;
String string1, string2;
System.out.println("Insira um inteiro:");
inteiro = scanner.nextInt();
System.out.println("Insira a String 1:");
string1 = scanner.nextLine();
System.out.println("Insira a String 2:");
string2 = scanner.nextLine();
//...
scanner.close();
}
Na imagem a baixo, perceba que não foi possível atribuir um valor à variável string1. A linha responsável por receber a entrada do teclado (linha 12) foi pulada e nada foi atribuído a variável.

Deixe seu feedback logo abaixo!
Gostou do artigo ou encontrou algum erro?