"Lan pungkasane, aku bakal ngandhani sampeyan babagan Peta."
"Peta, sing sampeyan ngerti, nyimpen set pasangan kunci-nilai. Tombol kudu unik, nanging nilai bisa apa wae. Yen sampeyan nambahake pasangan kunci-nilai menyang Peta, lan koleksi wis ngemot kunci, banjur nilai lawas bakal diganti karo sing anyar. Kanthi tembung liyane, tombol tumindak kaya indeks khusus sing bisa dadi obyek apa wae ."
Peta minangka istilah matématika sing nyathet sakumpulan pasangan (x, y), sing saben x unik cocog karo sawetara y.
Programer seneng banget karo Peta, mula kita nampilake 4 koleksi beda sing ngetrapake antarmuka Peta:
"Iki struktur warisan sing prasaja:"
"Ing kuning nuduhake yen Entri minangka antarmuka nested ing antarmuka Peta ."
"Entri ditambahake kanggo njlèntrèhaké pasangan unsur minangka entitas siji."
"Iki cara saka Map<K,V>:"
Metode | Katrangan |
---|---|
int size() |
Ngasilake nomer pasangan ing peta. |
boolean isEmpty() |
Priksa yen peta kosong. |
boolean containsKey(Object key) |
Apa peta ngemot kunci sing ditemtokake? |
boolean containsValue(Object value) |
Apa peta ngemot nilai sing ditemtokake? |
V get(Object key) |
Ngasilake nilai kanggo kunci sing ditemtokake. |
V put(K key, V value) |
Nyetel nilai anyar kanggo tombol. Cara ngasilake nilai lawas utawa null |
putAll(Map<? extends K, ? extends V> m) |
Nambah pasangan saka peta liyane. |
void clear() |
Mbusak peta, yaiku mbusak kabeh pasangan. |
Set<K>keySet() |
Ngasilake Set tombol. |
Collection<V>values() |
Ngasilake koleksi nilai. |
Set<Map.Entry<K, V>>entrySet() |
Ngasilake Set pasangan. |
"K lan V minangka paramèter jinis kanggo tombol lan nilai."
"Inggih, Aku menowo karo paling saka cara, nanging aku mung bisa karo sawetara wong."
"Apa maneh sing bisa sampeyan critakake babagan kelas Entry?"
"Kelas iki njlèntrèhaké pasangan unsur. Wis sawetara cara:"
Metode | Katrangan |
---|---|
K getKey() |
Ngasilake kunci pasangan kunci-nilai. |
V getValue() |
Ngasilake nilai pasangan kunci-nilai. |
V setValue(V value) |
Nyetel nilai anyar ing pasangan kunci-nilai. |
"Entri trep, amarga sampeyan bisa ngliwati pasangan menyang metode tanpa ngliwati kabeh peta."
"Aku weruh."
"Saiki aku bakal ngrembug implementasine Peta."
"Kaping pisanan yaiku HashMap . Iki nggunakake tabel hash kanggo nyimpen unsur. Tombol lan nilai bisa dadi jinis apa wae, uga null. Urutan unsur bisa diganti nalika koleksi diganti ."
"Unsur sing disimpen ing HashMap minangka pesawat saka kelompok utawa buckets. Metode hashCode () unsur nemtokake kang ember tumiba menyang.
"Kira-kira banget, unsur kanthi kode hash saka 1 nganti 100 tiba ing ember pisanan, sing duwe nilai saka 101 nganti 200 tiba ing nomer loro, lan sateruse."
"Titik nyimpen unsur kanthi cara iki yaiku kita bisa ngilangi kabeh unsur ing ember sing ora relevan nalika nggoleki utawa ngilangi unsur."
"Aku weruh."
"Ana artikel sing apik banget babagan HashMap. Aku nyaranake sampeyan maca: https://medium.com/@mr.anmolsehgal/java-hashmap-internal-implementation-21597e1efec3 "
"Koleksi kapindho yaiku LinkedHashMap . Bentenane utamane saka HashMap yaiku uga nyimpen item minangka dhaptar sing disambung. Ing HashMap biasa, urutan unsur ora ditemtokake lan bisa uga owah saka wektu. Lan sampeyan bisa entuk iterator saka LinkedHashMap lan gunakake kanggo lumaku kabeh unsur miturut urutan sing ditambahake menyang LinkedHashMap. Kajaba iku, LinkedHashMap duwe iterator sing ngidini sampeyan ngliwati kabeh pasangan supaya bisa digunakake / aktivitas pungkasan.
"Ana artikel sing apik banget babagan LinkedHashMap. Mangkene: https://medium.com/@mr.anmolsehgal/java-linkedhashmap-internal-implementation-44e2e2893036 "
"Koleksi katelu sing dakkarepake saiki yaiku TreeMap ."
" TreeMap nyimpen unsur-unsur kasebut kanthi urutan munggah. Iki digayuh amarga kasunyatane TreeMap nggunakake wit abang-ireng sing seimbang kanggo nyimpen unsur."
"Akibate, wektu selipan lan wektu telusuran sithik banget. Kelas iki minangka pilihan sing apik nalika nggunakake data sing akeh banget."
"Lan, mesthi, kita duwe artikel babagan TreeMap: https://medium.com/xebia-engineering/treemap-internals-199e0e0050b5 "
“Durung dakcritakake apa?”
"WeakHashMap, nanging Rishi ngandhani aku babagan iki sawetara dina kepungkur."
"Kapan iku?"
"Nalika dheweke ngomong babagan SoftReference, WeakReference, lan PhantomReference."
"Aku percaya karo sampeyan, ngelingi yen sampeyan ngarani kabeh kanthi bener. Banjur lunga santai. Sampai ketemu bengi iki."
"Nggih, Ellie."
GO TO FULL VERSION