Tablica String Java

0

Witam. Mam problem z tablicą typu String . Chcę ją uzupełnić wyrazami podanymi przez użytkownika ale pomija mi pierwszy wyraz nie wiem dlaczego ? Mógłby ktoś zerknąć na ten kod .

    public static void main(String[] args) {
    Scanner w = new Scanner(System.in);
    System.out.println("Podaj rozmiar tablicy:");
    int n = w.nextInt();
    String [] tab = new String [n];
    for ( int i = 0; i < tab.length ; i++)
       {
       System.out.println("Podaj wyraz tablicy: ");
       String wyraz = w.nextLine();
       tab[i] = wyraz;
       }
    for ( int i = 0; i < tab.length ; i++)
    {
        System.out.print(tab[i] + " ");
    }

}
}

0

Instrukcja w.nextInt(); pobiera tylko cyfrę , czyli jak dasz do wczytania wiersz:
"3 s"
To owszem, stworzy tablicę z 3 elementami, ale jako 1 element wrzuci już wszystko co jest po cyfrze 3, czyli " s". Popróbuj.
Aby to ominąć dodaj do kodu:
w.nextLine(); po tym jak wczytujesz rozmiar tablicy. Wrzuci tam niepotrzebne znaki jak enter, spacja i przejdzie do wczytywania wyrazów w pętli for.

1 użytkowników online, w tym zalogowanych: 0, gości: 1