Kezdőoldal » Számítástechnika » Programozás » Mi lehet a hiba az alábbi...

Mi lehet a hiba az alábbi JAVA kódban?

Figyelt kérdés

A feladat az volna, hogy egy gráf csúcsait tároljam, de már az elején elakadtam. Bekérem, hogy hány csúcsot akar és utána ezeket egy listában szeretném tárolni, de futáskor a 0. helyre nem ír semmit, hanem üresen hagyja és rögtön utána kéri a következőt. Ezek után rendesen lefut, a maradék 4 nevet szépen letárolja. Mit rontottam el? Itt a kód:


Scanner sc= new Scanner(System.in);

System.out.println("Hány csúcsot szeretne megadni. Kérem írjon be egy számot: ");

int csucsok;

csucsok=sc.nextInt();

System.out.println(csucsok +" csúcs lesz");



List csl=new LinkedList();


for (int i = 0; i < csucsok; i++) {System.out.println("Adja meg a/az " +(i+1) + ". csúcsot!");

csl.add(sc.nextLine());

System.out.println("A csúcs: " + csl);


}



2014. jan. 31. 22:23
 1/5 anonim ***** válasza:

Hmm... én nextLine helyett nextInt-et próbálnék, vagy fent a nextInt helyett nextLine-t. Nem biztos, hogy ez a gond, csak egy tipp. :)


Arra gondolok, hogy lehet a nextInt nem ugrik át az újsor jelen, hanem előtte megáll, a nextLine pedig a szám (csúcsok száma) és az újsor jel között indul, ahol ugye nincs semmi, és itt megy ugye az újsor jelig.


Próbáld ki szerintem. :)

2014. jan. 31. 22:57
Hasznos számodra ez a válasz?
 2/5 A kérdező kommentje:
Ezzel az a baj, hogy a feladatban a csúcsokat betűkkel kell jelölni, ezért voltam kénytelen nextLine-t használni. :(
2014. febr. 1. 04:42
 3/5 anonim ***** válasza:
Nincs ezzel semmi baj. A nextLine eredményét is konvertálhatod egésszé. De ha a fenti 2 módszerem egyikét sem próbálod ki, itt egy harmadik: a ciklusod előtt próbaképp hívj egy nextLine-t.
2014. febr. 1. 10:47
Hasznos számodra ez a válasz?
 4/5 A kérdező kommentje:

Valóban a nextLine paranccsal van valami baja, mert ha próbaképpen átírom nextInt-re akkor tökéletesen működik. Csak sajnos úgy nem megy bele a betű, csak számokat fogad el.

Ha csl.add(sc.nextLine()); sort beteszem a ciklus elé is akkor már működik, csak akkor meg az hagyja üresen az első helyet. Gyanítom, hogy ezt valahogy a ciklusban leszek kénytelen kikorrigálni némi felülírással, de ha van valami jobb megoldás nyugodtan írd meg még nagyon kezdő vagyok.

Köszönöm.

2014. febr. 1. 20:08
 5/5 A kérdező kommentje:
Közben meg is oldottam, nextLine helyett sima next-et használtam így tökéletes. :) Köszi a segítséget, ment a zöld
2014. febr. 1. 20:17

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!