Osatehtävä 1 tehdään hakemistossa Harjoitus3/Osa1.
Osatehtävässä tehdään joukko pieniä Java-ohjelmia, jotka käsittelevät
kokoelmia.
Huom! Tuloksena syntyvät ohjelmat ovat lyhyitä. Jos vastauksestasi näyttää tulevan kovin pitkä (yli 20 riviä koodia), kannattaa miettiä, miten saisit asian tehtyä helpommin.
Jos et vielä tunne kokoelmia, ota niistä selvää esimerkiksi Sunin tutoriaalista.
Tee Java-ohjelma PoistaDuplikaatit, joka ottaa
mielivaltaisen monta komentoriviparametria, muodostaa niistä joukon,
jossa duplikaatit (eli saman arvon toistot) on poistettu ja tulostaa
näin syntyneen joukon. Käytä apuna Javan kokoelmaluokkia. Toiminnan
voit laittaa suoraan main metodiin.
Ohessa on esimerkki ohjelman mahdollisesta toiminnasta. Huomaa, ettei tulostusjärjestystä ole määrätty.
java PoistaDuplikaatit Jukka Anna Pertti Jaakko Antti Anna Unto Veijo Unto Jukka
[Veijo, Unto, Antti, Anna, Jaakko, Pertti, Jukka]
Tee Java-ohjelma Jarjesta1, joka ottaa mielivaltaisen
monta komentoriviparametria, muodostaa niistä joukon ja tulostaa ne
kasvavassa leksikograafisessa järjestyksessä duplikaatit poistettuna.
Käytä apuna Javan kokoelmaluokkia. Toiminnan voit laittaa suoraan
main metodiin.
Esimerkki:
java Jarjesta1 Jukka Anna Pertti Jaakko Antti Anna Unto Veijo Unto Jukka
[Anna, Antti, Jaakko, Jukka, Pertti, Unto, Veijo]
Tee Java-ohjelma Jarjesta2, joka ottaa mielivaltaisen
monta komentoriviparametria ja tulostaa ne kasvavassa
leksikograafisessa järjestyksessä duplikaatit säilyttäen. Käytä apuna
Javan kokoelmaluokkia. Toiminnan voit laittaa suoraan main
metodiin.
Esimerkki:
java Jarjesta2 234 aabnm Aa 001 xyz 001a aa Aa 234 123 aabnm
[001, 001a, 123, 234, 234, Aa, Aa, aa, aabnm, aabnm, xyz]
Tehtävä on muuten sama kuin 1.3, mutta tässä järjestyksen pitää olla
laskeva. Ohjelman nimi on Jarjesta3.
Esimerkki:
java Jarjesta2 234 aabnm Aa 001 xyz 001a aa Aa 234 123 aabnm
[xyz, aabnm, aabnm, aa, Aa, Aa, 234, 234, 123, 001a, 001]
Tee Java-ohjelma MinMax, joka ottaa mielivaltaisen monta
komentoriviparametria, tallettaa ne List-tyyppiseen
kokoelmaan ja tulostaa niistä pienimmän ja suurimman. Käytä
iteraattoria kokoelman läpikäyntiin ja luokan String
metodia compareTo vertailuun. Toiminnan voit laittaa
suoraan main metodiin.
Huom! Tämä ohjelma on jo hieman pitempi kuin aiemmat (voi olla jopa
yli 30 riviä)
Esimerkki:
java MinMax Jukka Anna Pertti Jaakko Antti Anna Unto Veijo Unto Jukka
Min = Anna, max = Veijo