NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
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í.
Mezi 13:00 až cca 15:00 proběhne odstávka sítě z důvodu aktualizace. Web bude po celou dobu nedostupný.
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
Člen
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.