NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

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

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

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
Člen IT Redactor Gang
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.