Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Map-luokka Mikä Map on? Mapin esittely ja luonti Map-luokan metodeja Mappiin lisääminen Mapin läpikäynti Mapista poistaminen 1.

Samankaltaiset esitykset


Esitys aiheesta: "Map-luokka Mikä Map on? Mapin esittely ja luonti Map-luokan metodeja Mappiin lisääminen Mapin läpikäynti Mapista poistaminen 1."— Esityksen transkriptio:

1 Map-luokka Mikä Map on? Mapin esittely ja luonti Map-luokan metodeja Mappiin lisääminen Mapin läpikäynti Mapista poistaminen 1

2 Mikä Map on?  Map on hajautustauluksi kutsuttu tietorakenne, johon tiedot tallennetaan avain-arvo-pareina (Key-Value pairs).  Mapin avaimet ja arvot voivat olla mitä tahansa olioita.  Esimerkki avain-arvo-pareista:  tilinumero – Tili-luokan olio  tuotekoodi – Tuote-luokan olio  asiakastunnus – Asiakas-luokan olio  Taulukossa (Array) ja listassa (List) tiedot löytyvät paikkanumeron eli indeksin perusteella, mutta Mapissa tiedot löytyvät sisällön/avaimen perusteella. Esim. pankkitilin tiedot löytyvät Map-rakenteesta tilinumero-avaimen perusteella. Ja tuotteen tiedot löytyvät Map- rakenteesta tuotekoodi-avaimen perusteella. 2

3 Mapin esittely ja luonti  Ohjelmaan lisätään import java.util.Map; import java.util.HashMap;  Pankkitilit tilinumero-avaimen mukaan  Tuotteet tuotekoodi-avaimen mukaan  Asiakkaat asiakastunnus-avaimen mukaan 3 Map asiakkaat = new HashMap (); Map tuotteet = new HashMap (); Map tilit = new HashMap (); mitä arvoja Mappiin laitetaan(luokka) tyhjän Mapin luominen avaimen tyyppi (luokka)

4 Map-luokan metodeja 4 Map-luokan metodiSelitys V get(K key)Palautetaan Mapista viite avaimella key löytyvään arvoon (tässä olioon). esim. Tili tili1 = tilit.get("Fi06512”); V put(K key, V value)Lisätään Mappiin avaimella key viite parametrina annettuun olioon. Metodi palauttaa viitteen lisättyyn olioon. esim. tilit.put(”Fi09923”, tili5); V remove(K key)Poistetaan Mapista avaimella key löytyvä viite olioon. Metodi palauttaa viitteen poistettuun olioon. esim. tilit.remove(”Fi12233”); Set keySet()Palauttaa Map-rakenteeseen talletetut avaimet Set-tyyppisenä kokoelmana. esim. Set tilinrot = tilit.keySet(); Huom! K = avaimen (Key) luokka-tietotyyppi, V = arvon (Value) luokka-tietotyyppi

5 Mappiin lisääminen // luo Map-rakenne, jonne talletetaan pankkitilien tietoja Map tilit = new HashMap (); String tilinro; // pankkitilin numero double saldo; // pankkitilin saldo System.out.print("Anna pankkitilin numero: "); tilinro = input.nextLine(); System.out.print("Anna pankkitilin saldo: "); saldo = input.nextDouble(); // input.nextLine() Tili uusiTili = new Tili(tilinro, saldo); // luo uusi Tili-olio tilit.put(tilinro, uusiTili); // jos listasta löytyy jo tili-olio // samalla tilinrolla, vanha tili-olio tuhoutuu, kun uusi // lisätään 5 Lisätään tilit-Mappiin uusiTili- olio. Olion avaimena tilinro.

6 Mapin läpikäynti // Mapin tilinumero-avaimet pyydetään keySet-metodilla Set:ksi Set tilinrot = tilit.keySet(); // luo Iterator-tyyppinen i-olio, jolla voidaan läpikäydä // kaikki Set-kokoelman tilinumerot Iterator i = tilinrot.iterator(); String seurTilinro = null; // seuraava Tilinro Tili seurTili = null; // seuraava Tili-olio while (i.hasNext()) { // jos löytyy vielä seuraava tilinro seurTilinro = i.next(); seurTili = tilit.get(seurTilinro); System.out.println(seurTili); } // HashMap tallentaa tilit-rakenteeseen tili-oliot //satunnaisessa järjestyksessä. Tämä näkyy myös tulostuksessa. Käydään iteraattorin avulla kaikki tilinrot läpi ja tulostetaan tilien tiedot 6

7 Mapista poistaminen 7 7 String tilinro; // pankkitilin tilinumero Tili poistettuTili = null; // apumuuttuja System.out.println("Syötä poistettavan pankkitilin tilinro: "); tilinro = input.nextLine(); poistettuTili = tilit.remove(tilinro); if (poistettuTili != null){ // jos poistettava tili löytyi System.out.println("Tileistä poistettu seuraava tili:"); System.out.println("Tilinro: "+poistettuTili.getNumero()); System.out.println("Saldo: "+poistettuTili.getSaldo()); } else { System.out.println("Tiliä "+tilinro+" ei löydy tileistä."); } poistetaan tilit-Mappista viite tili- olioon. Poistettavan tilin avain saadaan parametrina.


Lataa ppt "Map-luokka Mikä Map on? Mapin esittely ja luonti Map-luokan metodeja Mappiin lisääminen Mapin läpikäynti Mapista poistaminen 1."

Samankaltaiset esitykset


Iklan oleh Google