Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Problém se zadáváním dat

Aktivity
Avatar
Impuls
Člen
Avatar
Impuls:19.2.2016 13:55

Ahoj, mám tu naprosto jednoduchou část kódu, ale nechápu proč mi to neukládá slovo na nultý index pole. Prosím o radu. :)

Scanner sc = new Scanner(System.in);
        System.out.println("Zadejte pocet mest: ");
        int pocetMest = sc.nextInt();
        String[] mesta = new String[pocetMest];

        for(int i = 0; i < mesta.length; i++) {
            System.out.println("Zadejte nazev mesta: ");
            mesta[i] = sc.nextLine();
        }
 
Odpovědět
19.2.2016 13:55
Avatar
Atrament
Tvůrce
Avatar
Atrament:19.2.2016 14:07

Jo to je celkem znamý problém, vraž tam za to načtení počtu měst řádek:

sc.nextLine();

a tím to fixneš, jde pravděpodobně o to, že při tom načítání intu pomocí nextInt nedojde k zpracování Enteru a ten tam zůstane viset a rovnou se vloží do prvního následujícího nextLine, takže se ti vlastně uloží do toho nultého prvku v mesta. (Moje soukromá teorie nikdy jsem to podrobně nezkoumal)

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
19.2.2016 14:07
Avatar
Impuls
Člen
Avatar
Impuls:19.2.2016 15:06

Taková kravinka. Díky moc seš super! :)

 
Nahoru Odpovědět
19.2.2016 15:06
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.