Java Mad Libs -peli?

Selvitä Enkeli

Minun on luotava Mad Libs -peli taulukon avulla. Minulla on ohjelma, jonka mukaan minulla ei ole virheitä, mutta kun suoritan sen, se ei tee mitään. Voiko kukaan auttaa? Tarvitsen käyttäjän syöttämään sanoja, jotta ne voidaan korvata tietyn tarinan tekemiseksi



tuo java.util.ArrayList;

tuo java.util.Scanner;

julkisen luokan MadLibs

{

public staattinen void main (String [] argumentti)

{

Skannerin näppäimistö = uusi skanneri (System.in);

// Määritä tarvittavat puheen osat

ArrayList-sanat = uusi ArrayList ();

sanat.add ('substantiivi');

Merkkijono ensin = keyboard.next ();

words.add ('monikko-substantiivi');

unelma siivouksen siivoamisesta

Merkkijono toinen = näppäimistö.seuraava ();

sanat.add ('substantiivi');

Merkkijono kolmas = näppäimistö.seuraava ();

sanat.add ('paikka');

Merkkijono neljäs = näppäimistö.seuraava ();

words.add ('adjektiivi');

Merkkijono viides = näppäimistö.seuraava ();

sanat.add ('substantiivi');

Kymmenes merkkijono = näppäimistö.seuraava ();

printMadLib (ensimmäinen, toinen, kolmas, neljäs, viides, kuudes);

}

public static void printMadLib (Merkkijono ensimmäinen, Merkkijono toinen, Merkkijono kolmas, Merkkijono neljäs, Merkkijono viides, String kuudes)

{

System.out.println ('Ole ystävällinen' + ensimmäinen + '-jalkainen' + toinen);

System.out.println ('Ankka voi olla jonkun oma + + kolmas);

System.out.println ('Ole ystävällinen' + toinen + 'sisään' + neljäs);

System.out.println ('Jos sää on aina' + viides);

System.out.println ('Saatat ajatella, että tämä on + + kuudes);

System.out.println ('No se on');

}

julkinen staattinen merkkijono ReplaceDescriptorWithWord (Object first, Scanner input)

{

System.out.println ('Anna ensin' + ensin);

return input.nextLine ();

}

taistelevat unessa

}

2 vastausta

  • BobSuosikkivastaus

    Koodia tarkasteltaessa sen tulisi lukea kuusi sanaa tulokanavalta. Se ei kuitenkaan anna käyttäjälle mitään kehotuksia, joten ehkä siksi se ei näytä tekevän mitään. On huono käytäntö lukea näppäimistöltä kirjoittamatta aiemmin 'Syötä syöte' tai vastaavaa viestiä.

    FWIW, asetat tietoja ArrayList-luetteloon, mutta et käytä taulukkoa missään muualla koodissasi. Mitä varten se on?

  • ?

    Sinun tulisi myös käyttää näppäimistöä.nextLine () syötteen lukemiseen, koska se poistaa myös rivinvaihtomerkin syöttövirrasta.

    Muussa tapauksessa seuraava .next () palauttaa tyhjän merkkijonon.

Selvitä Enkeli