Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Array de String preenchido pelo usuario ão pega a 1º posicao

public static void main(String[] args) {

        Scanner entrada = new Scanner(System.in);

        // quantidade de linhas que o programa ira tratar
        int quantidadeLinhas = entrada.nextInt();
        String palavras[] = new String[quantidadeLinhas];

        //Simplesmente pula a posição zero,         
        for(int i = 0; i < quantidadeLinhas; i++ ) {
              palavras[i] = entrada.nextLine();

        }
        // Na hora de imprimir a primeira posição no caso 0(zero) esta vazia
        for(int i = 0; i < quantidadeLinhas; i++ ) {
              System.out.println(palavras[i]);

        }
3 respostas
solução!

Fala Pedro, tudo bem?

O problema é com o método input.nextInt(). Ele só lê o valor int. Então, para pular para a próxima linha você tem que adicionar o input.nextLine(). Ou melhor ainda, faça assim:

public static void main(String[] args) {

        Scanner entrada = new Scanner(System.in);

        System.out.print("Quantidade de linha que o programa irá tratar: ");
        int quantidadeLinhas = Integer.valueOf(entrada.nextLine());
        String palavras[] = new String[quantidadeLinhas];

        for (int i = 0; i < quantidadeLinhas; i++) {
            System.out.print("Informe o valor " + i + ": ");
            palavras[i] = entrada.nextLine();

        }

        for (int i = 0; i < quantidadeLinhas; i++) {
            System.out.println(palavras[i]);

        }
    }

Boa noite Pedro,

Eu não sei se entendi bem sua dúvida, mas tente trocar e veja se era isso que queria.

palavras[i] = entrada.nextLine();

por

palavras[i] = entrada.next();
    int quantidadeLinhas = entrada.nextInt();
        String palavras[] = new String[quantidadeLinhas];
        entrada.nextLine();    // acrescentei essa linha como sugerido pelo Otávio  antes do laço for e agora sim esta capturando a posição zero.