[Resolvido] Me ajude a resolver! Scanner não le o numero de vezes pedido!

Eu quero digitar a quantidade de vezes que vou escrever, mas sempre que coloco um numero maior que um ele automaticamente pula um scanner e nao le:

            Scanner teclado = new Scanner(System.in);
	
	System.out.print("Digite quantas vezes deseja escrever: ");
	int vezes = teclado.nextInt();
	String[] frase = new String[vezes];
	
	for (int cont=0; cont < vezes; cont++) {	
		System.out.print("Digite aqui: ");
		frase[cont] = teclado.nextLine();		
	}

	for (int cont=0; cont<vezes; cont++) {
	System.out.println(""+frase[cont]);
	}

Ai ele imprime assim:

      Digite quantas vezes deseja escrever: 3
      **Digite aqui: Nao me da a opção de escrever aqui** Digite aqui: Escrevo a primeira vez
      Digite aqui: Escrevendo a segunda vez

Escrevo a primeira vez
Escrevendo a segunda vez

Como resolvo? ou pelo menos tiro aquele “Digite aqui” que nao funciona?

Isso é normal, acontece sempre que vc chama um nextLine() logo após chamar um nextInt() (ou nextFloat(), etc…).

Uma das formas que eu mais gosto para corrigir é fazer o seguinte:

Troque a linha abaixo:

int vezes = teclado.nextInt();

Por esta;

int vezes = Integer.parseInt(teclado.nextLine());

Muito obrigado funcionou mesmo!!

1 curtida