Map

Map

Suatu peta (map) adalah generalisasi dari array. Seperti array, map juga memiliki operasi untuk mengambil dan meletakkan elemen. Akan tetapi pada map, operasi ini tidak dilakukan pada bilangan 0, 1, … N-1, akan tetapi pada sembarang Object. Beberapa bahasa pemrograman menggunakan istilah array asosiatif (associative array) karena kesamaan perintah dengan array biasa. Pada bahasa pemrograman tersebut, kita bisa menuliskan A[“joko”] yang digunakan untuk memetakan “joko” pada suatu elemen di dalam array. Java tidak menggunakan perintah yang sama pada map, akan tetapi idenya serupa : Map adalah seperti array yang indeksnya adalah objek sembarang, bukan integer. Pada map, objek yang digunakan sebagai “indeks” disebut kunci (key). Objek yang ditunjuk oleh indeks tersebut disebut nilai (value). Satu kunci hanya boleh menunjuk pada satu nilai, akan tetapi satu nilai bisa ditunjuk oleh beberapa kunci.

Dalam Java, map didefinisikan dalam interface java.util.Map, yang memiliki beberapa metode untuk bekerja dengan map. Jika map adalah variabel dengan tipe Map, maka berikut ini adalah beberapa metodenya :

  • map.get(kunci) — mengembalikan Object yang ditunjuk oleh kunci. Jika map tidak     memiliki nilai yang ditunjuk oleh kunci, maka nilai null akan dikembalikan.
  • map.put(kunci, nilai) — Mengisi map dengan pasangan kunci dan nilai. Kedua-dua kunci dan nilai bisa berupa objek apa saja.
  • map.putAll(map2) — jika map2 adalah map lain, maka perintah ini akan mengkopi semua isi pada map2 ke dalam map.
  • map.remove(kunci) — Jika map memiliki kunci yang menunjuk pada suatu nilai, perintah ini akan menghapus kunci beserta nilai yang ditunjuknya, atau dengan kata lain menghapus pasangan kunci dan nilai pada map sekaligus.
  • map.containsKey(kunci) — mengembalikan nilai boolean true jika map memiliki kunci yang merujuk pada suatu nilai
  • map.containsValue(nilai) — mengembalikan nilai boolean true jika map memiliki nilai yang ditunjuk oleh kunci apapun.
  • map.size() — mengembalikan int yang berisi jumlah pasangan asosiasi pada map.
  • map.isEmpty() — mengembalikan boolean true jika map tidak berisi pasangan asosiasi apa-apa.
  • map.clear() — menghapus semua pasangan asosiasi dalam map.

Metode put dan get jelas merupakan metode yang paling sering digunakan dalam map. Dalam banyak aplikasi, metode ini mungkin hanya metode ini yang kita butuhkan. Artinya, menggunakan map sama mudahnya dengan menggunakan array biasa. Java memiliki dua kelas yang mengimplementasikan interface Map, yaitu : TreeMap,HashMap dan LinkedHashMap.


Map
diimplementasikan menjadi :

  • HasHMap

HashMap tidak menyimpan pasangan kunci/nilai dalam urutan tertentu, sehingga tidak ada batasan objek apa yang bisa disimpan di dalamnya. Hampir semua operasi dapat berjalan lebih cepat pada HashMap dibandingkan dengan TreeMap.

  • TreeMap

TreeMap adalah salah satu implementasi dari class interface yang mengurutkan collection berdasarkan key dari elemen berupa pasangan <key, value>.

  • LinkedHashMap

LinkedHashMap adalah subclass dari HashMap. Itu berarti mewarisi fitur HashMap. Selain itu, linked list mempertahankan penyisipan-order.

  • HasHMap

CONTOH CODING :

HashMap10

HashMap11

HASIL CODING :

HashMap12

  • TreeMap

CONTOH CODING :

Treemap1

Treemap2

HASIL CODING :

Treemap3

  • LinkedHashMap

CONTOH CODING :

LinkedHashMap1

LinkedHashMap2

HASIL CODING :

LinkedHashMap3

Tinggalkan komentar