dodání ihned! nové
Black Friday je tu! Využij jedinečnou příležitost a získej až 80 % znalostí navíc zdarma! Více zde
BF
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
Super redaktor
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í
+1 bodů
Řešení problému
 
Nahoru Odpovědět
19.2.2016 14:07
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
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.