Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Olioiden taulukointi Perustaulukon käyttö Luokan ilmentymät voidaan tallettaa taulukkoon samoin kuin muuttujat Esimerkki talletetaan taulukkoon opintojaksojen.

Samankaltaiset esitykset


Esitys aiheesta: "Olioiden taulukointi Perustaulukon käyttö Luokan ilmentymät voidaan tallettaa taulukkoon samoin kuin muuttujat Esimerkki talletetaan taulukkoon opintojaksojen."— Esityksen transkriptio:

1 Olioiden taulukointi Perustaulukon käyttö Luokan ilmentymät voidaan tallettaa taulukkoon samoin kuin muuttujat Esimerkki talletetaan taulukkoon opintojaksojen tietoja

2 Olioiden taulukointi class Opintojakso{ private String tunnus; private String nimi; public Opintojakso() {} public Opintojakso(String tunnus, String nimi){ this.tunnus = tunnus; this.nimi = nimi; } public Opintojakso(Opintojakso jakso){ tunnus = jakso.tunnus; nimi = jakso.nimi; } Opintojakso-luokka

3 Olioiden taulukointi public void setTunnus(String tieto){ tunnus = tieto; } public void setNimi(String tieto){ nimi = tieto; } public String getNimi(){ return nimi; } public String getTunnus(){ return tunnus; } public String toString(){ return (tunnus + ” ” + nimi); } Opintojakso-luokka jatkuu

4 Olioiden taulukointi class OpintojaksoTaulukointi{ public void aja(){ Opintojakso jakso; Opintojakso [] jaksot = new Opintojakso[3]; String tunnus, nimi; System.out.println(”*** Opintojaksojen taulukointi ***”); for(int i = 0; i< jaksot.length; i++){ tunnus = Input.stringLuku(”Anna tunnus:”); nimi = Input.stringLuku(”Anna nimi:”); jaksot[i] = new Opintojakso(tunnus, nimi); } for(int i = 0; i < jaksot.length; i++){ System.out.println(jaksot[i].toString()); } Opintojaksojen taulukointi

5 Olioiden taulukointi public static void main (String [] args) { OpintojaksoTaulukointi sovellus = new OpintojaksoTaulukointi(); sovellus.aja(); } Opintojaksojen taulukointi

6 Taulukoista, käsittelyvinkkejä Taulukon kopiointi sujuu parhaiten java.lang.System.arraycopy() – metodilla Metodin esittely: arraycopy (Object src, int srcPos, Object dest, int destPos, int length) Opintojaksotaulun kopiointi Opintojakso [] kopiot = new Opintojakso[3]; System.arraycopy(opintojaksot, 0, kopiot, 0, 3);

7 Taulukoista, käsittelyvinkkejä Taulukon lajittelu nousevaan järjestykseen käy yksinkertaisimmin java.util.Arrays – luokan sort-metodilla Metodin esittely: Arrays.sort(lajiteltava taulukko); Huomaa: toimii parhaiten muuttujien ja Stringien lajittelussa

8 Arraylist –luokka Luokka java.util.ArrayList –Javan luokka ArrayList on linkitetyn listan eräs toteutus. Tärkeimpiä metodeja: –add (ylikuormitettu)lisää elementin listaan –clear tyhjentää listan –contains tutkii löytyykö etsittävä elementti listasta –get palauttaa elementin halutusta positiosta –isEmpty tutkii onko lista tyhjä –remove (ylikuormitettu) poistaa elementin halutusta positiosta tai halutun elementin –set korvaa halutussa positiossa sijaitsevan elementin –size palauttaa listan elementtien lukumäärän Jukka Harju

9 Iterator-rajapinta Iteraattori on olio, jonka avulla voidaan läpikäydä kokoelma (esim. ArrayList -olio). Iteraattorille on käytettävissä metodit: –hasNext palauttaa arvon true, mikäli kokoelmassa on vielä elementtejä jäljellä –next palauttaa kokoelman seuraavan elementin –remove poistaa viimeksi palautetun elementin kokoelmasta ArrayList -luokan oliolle saadaan luotua iteraattori seuraavasti: ArrayList lista = new ArrayList(); Iterator iter = lista.iterator(); ArrayList -luokan iterator -metodi on peritty yliluokalta AbstractList. Jukka Harju

10 Opintojaksojen talletus ArrayListiin import java.util.*; class OpintojaksoTaulukointi{ public void aja(){ Opintojakso jakso; ArrayList jaksot = new ArrayList(); String tunnus, nimi; System.out.println(”*** Opintojaksojen taulukointi ***”); tunnus = Input.stringLuku(”Anna tunnus(enter lopettaa):”); while (tunnus.length > 0){ nimi = Input.stringLuku(”Anna nimi:”); jaksot.add(new Opintojakso(tunnus, nimi)); tunnus = Input.stringLuku(”Anna tunnus(enter lopettaa):”); }

11 Opintojaksojen talletus ArrayListiin Iterator iter = jaksot.iterator(); while(iter.hasNext()) System.out.println((Opintojakso)iter.next()); } public static void main (String [] args) { OpintojaksoTaulukointi sovellus = new OpintojaksoTaulukointi(); sovellus.aja(); }


Lataa ppt "Olioiden taulukointi Perustaulukon käyttö Luokan ilmentymät voidaan tallettaa taulukkoon samoin kuin muuttujat Esimerkki talletetaan taulukkoon opintojaksojen."

Samankaltaiset esitykset


Iklan oleh Google