1 List-luokan soveltamista List-luokan metodeja Listaan lisääminen Listan läpikäynti Listasta etsiminen Listan sisällön muuttaminen Listasta poistaminen Listan kopioiminen 1 List-luokan metodeja List-luokan metodi Luokka get(int index) boolean add(luokka olio) Luokka remove(int index) boolean remove(luokka olio) int size() Selitys Palautetaan viitteen listassa indexillä i olevan olioon. Indeksointi alkaa nollasta (0) Lisätään listan loppuun viite parametrina annettuun olioon. Palauttaa true, jos lisäys onnistui Poistetaan listasta viite indexillä i olevaan olioon. Palauttaa viitteen poistettuun olioon Poistetaan listasta viite parametrina olevaan olioon. Palauttaa true, jos viite olioon poistettiin Palautta listassa olevien viitteiden määrän Näiden metodien avulla voidaan käsitellä listassa olevia viitteitä olioihin siis hakea, lisätä ja poistaa. Olioiden muuttamiseen ja lisäämiseen käytetään sovellusluokan setmetodeja esim. setnumero(string value), koska käsitellään olioita eikä listaa. 2
2 esitellään ja alustetaan lista, listaan laitetaan viitteitä Tili-luokan olioihin List<Tili> = new ArrayList<Tili>(); Tili 1 Tili 2 3 1 =.get(0); palauttaa viitteen järjestysltaan annettuun (0) olioon.remove(0); poistaa listalta viitteen järjestysltaan annettuun (0) olioon.add(2); lisää listaan viitteen parametrina olevaan olioon.remove(2); poistaa listalta viitteen parametrina annettuun olioon Listaan lisääminen esitellään ja alustetaan lista, listaan laitetaan viitteitä Tili-luokan olioihin List<Tili> = new ArrayList<Tili>(); System.out.print("Anna n: "); String = input.nextline(); System.out.print("Anna alku: "); double = input.nextdouble(); Tili = new Tili(, ); luodaan olio annetuilla tiedoilla.add(); lisätään listaan viite olioon List-luokan add-metodilla 4
3 Listan läpikäynti List<Tili> = new ArrayList<Tili>(); // Tässä välissä lisätään listaan viitteitä olioihin List-luokan size-metodi palauttaa listan koon for (int i = 0; i <.size(); i++) { Tili =.get(i); pyydetään List-luokan get-metodilla viite listan i:nteen jäseneen, joka on Tili-luokan olio System.out.println(.toString()); tietojen näyttämiseen käytetään Tili-luokan metodia 5 Tili =.get(i); kun i=0, -olio viittaa listan ensimmäiseen olioon Listasta etsiminen int i = 0; Tili = null; boolean loytynyt = false; System.out.print("Annan : "); String = input.nextline(); while(! loytynyt && i <.size()) { =.get(i); String =.getnumero(); if (.equals()) { loytynyt = true; else { i++; if (loytynyt) { System.out.println(.toString(); else { System.out.println("Tiliä ei ole"); silmukkaa suoritetaan niin kauan kunnes etsitty löytyy tai lista päättyy merkkijonoja vertaillaan Stringluokan equals-metodilla List-luokan size-metodi kertoo, montako viitettä olioihin listassa on pyydetään List-luokan getmetodilla listalta viite i:nteen olioon (Tili-luokan olio) kysytään Tili-luokan getnumero-metodilla a (String) tietojen näyttämiseen käytetään Tili-luokan tostring-metodia 6
4 Listan sisällön muuttaminen // Tässä on etsitty listalta muutettava // alla -olio viittaa listalla muutettavaan olioon // =.get(i); System.out.print("Panon määrä: "); double maara = input.nextdouble(); -olio viittaa listalla muutettavaan olioon. Listan sisällön muuttamiseen käytetään Tili-luokan metodeja..pano(maara); System.out.println("Saldo panon jälkeen " +.getsaldo()); 1 7 Listasta poistaminen Ensimmäinen tapa // Tässä on etsitty listalta poistettava // alla -olio viittaa listalla poistettavaan olioon // =.get(i); listasta poistetaan viite olioon List-luokan remove-metodilla. Metodin parametrina on.remove(); viite olioon, joka poistetaan listalta 1 8 Toinen tapa // Tässä on etsitty listalta poistettava // alla i (kokonaisluku) kertoo poistettavan n paikan // listassa listasta poistetaan viite List-luokan removemetodilla. Metodin parametrina on indeksi, joka.remove(i); kertoo, monesko viite poistetaan listasta
5 lista sisältää viitteet olioihin Listan kopioiminen List<Tili> kopio = new ArrayList<Tili>(); for (int i = 0; i <.size(); i++) { Tili = new Tili(.get(i).getNumero(),.get(i).getSaldo()); kopio.add(); kopioon on tehtävä alkuperäisen listan olioista kopiot, jotta molemmat listat sisältävät omat olionsa kopio