Salah satu topik paling menarik di Java adalah antarmuka Peta yangmewakili pemetaan antara kunci dan nilai.Ini sering disalahpahami sebagai subtipe dari antarmuka di Java.Artikel tentang Java Map Interface ini akan membantu Anda memahami dan menguasai cara kerja peta .
tipe data tanggal dalam sql
Di bawah ini adalah topik yang dibahas dalam artikel ini:
- Antarmuka Peta Java
- Karakteristik Antarmuka Peta
- Hirarki Peta Jawa
- Metode di Antarmuka Peta Java
- Implementasi Antarmuka Peta
Antarmuka Peta Java
Peta di Jawa adalah file obyek yang memetakan kunci ke nilai dan dirancang untuk pencarian yang lebih cepat. Data disimpan dalam pasangan nilai-kunci dan setiap kunci itu unik. Setiap kunci memetakan ke nilai yang karenanya dinamai peta nama. Pasangan nilai-kunci ini disebut entri peta.
Dalam , java.util.Map adalah yang mencakup tanda tangan metode untuk penyisipan, penghapusan, dan pengambilan elemen berdasarkan kunci. Dengan metode seperti itu, ini adalah alat yang sempurna untuk digunakan untuk pemetaan asosiasi nilai kunci seperti kamus.
Karakteristik Antarmuka Peta
- Antarmuka Peta bukan subtipe sebenarnya dari antarmuka Koleksi, oleh karena itu,karakteristik dan perilakunya berbeda dari jenis koleksi lainnya.
- Ini menyediakantiga tampilan koleksi - kumpulan kunci, kumpulan pemetaan nilai kunci, dan kumpulan nilai.
- UNTUKPetatidak dapat berisi kunci duplikat dan setiap kunci dapat dipetakan ke paling banyak satu nilai. Beberapa implementasi mengizinkan kunci null dan nilai null ( HashMap dan LinkedHashMap ) tapi beberapa tidak ( TreeMap).
- Antarmuka Peta tidak menjamin urutan pemetaan, namun, ini tergantung pada implementasinya. Contohnya, HashMap tidak menjamin urutan pemetaan, tetapi TreeMap tidak.
- Kelas AbstractMap menyediakan implementasi kerangka antarmuka Peta Jawa dan sebagian besar beton Peta kelas memperluas kelas AbstractMap dan mengimplementasikan metode yang diperlukan.
Sekarang Anda sudah memiliki gambaran tentang antarmuka Map adalah, mari kita lanjutkan dan lihat hierarki Peta Java.
Hirarki Peta Jawa
Ada dua antarmuka yang mengimplementasikan Map di java: Map dan SortedMap. Dan kelas implementasi Map yang populer di Jawa adalah HashMap, TreeMap , dan LinkedHashMap. Hierarki Peta Jawa diberikan di bawah ini:
Sebelum kita memeriksa tiga kelas implementasi Antarmuka Peta Java yang disebutkan di atas, berikut adalah beberapa metode umum yang dapat Anda temukan saat bekerja dengan Peta.
Metode di Antarmuka Peta Java
Metode | Deskripsi |
public put (kunci Objek, nilai Objek) | Metode ini memasukkan entri di peta |
publikvoid putAll (Peta peta) | Metode ini memasukkan peta yang ditentukan di peta ini |
Hapus Objek publik (kunci Objek) | Ini digunakan untuk menghapus entri untuk kunci yang ditentukan |
set publik keySet () | Ini mengembalikan tampilan Set yang berisi semua kunci |
Set publik entrySet () | Ini mengembalikan tampilan Set yang berisi semua kunci dan nilai |
batal jelas () | Ini digunakan untuk mengatur ulang peta |
public void putIfAbsent (kunci K, nilai V) | Ini memasukkan nilai yang ditentukan dengan kunci yang ditentukan di peta hanya jika itu belum ditentukan |
public Object get (Object key) | Ini mengembalikan nilai untuk kunci yang ditentukan |
public boolean containsKey (kunci Objek) | Ini digunakan untuk mencari kunci yang ditentukan dari peta ini |
Implementasi Peta
Ada beberapa yang menerapkan Peta Javatetapi ada tiga implementasi utama dan tujuan umumHashMap, TreeMap, dan LinkedHashMap.Mari kita lihat karakteristik dan perilaku setiap implementasi dengan contohnya
Kelas HashMap
Kelas paling umum yang mengimplementasikan antarmuka Java Map adalah HashMap. Ini adalah implementasi berbasis tabel hash dari antarmuka Peta.Ini mengimplementasikan semua operasi Petadan memungkinkan nilai null dan satu kunci null. Selain itu, kelas ini tidak mempertahankan urutan apa pun di antara elemennya. Berikut adalah contoh program yang mendemonstrasikan kelas HashMap.
paket MyPackage import java.util. * class HashMapExample {public static void main (String [] args) {Map course = new HashMap () // Tambahkan beberapa kursus. kursus.put ('Kursus Java', Integer baru (6)) kursus.put ('Kursus Cloud', Integer baru (7)) kursus.put ('Kursus Pemrograman', Integer baru (5)) kursus.put (' Kursus Ilmu Data ', Integer baru (2)) System.out.println (' Total kursus: '+ kursus.size ()) Setst = course.entrySet () untuk (Map.Entry me: st) {System.out.print (me.getKey () + ':') System.out.println (me.getValue ())} System.out. println () String searchKey = 'Kursus Java' if (kursus.containsKey (searchKey)) System.out.println ('Ditemukan total' + kursus.get (searchKey) + '' + searchKey)}}
Keluaran
Total kursus: 4 Kursus Cloud: 7 Kursus Pemrograman: 5 Kursus Ilmu Data: 2 Kursus Java: 6 Ditemukan total 6 Kursus Java
Dalam program di atas, saya telah menggunakan banyak metode yang disebutkan dalam tabel. Pertama, taruh() metode memasukkan 4 entri ke dalam peta, dan ukuran() metode di langkah berikutnya menampilkan ukuran peta (total pasangan nilai kunci). Setelah itu, pada langkah selanjutnya, file entrySet () metode mengembalikan semua pasangan nilai kunci. Program ini juga menunjukkan bagaimana memanfaatkan Dapatkan() metode untuk mencari nilai menggunakan kunci terkait.
Mari beralih ke kelas berikutnya yang mengimplementasikan Antarmuka Peta Java - TreeMap.
Kelas TreeMap
Implementasi ini menggunakan pohon Merah-Hitam sebagai dasar struktur data . Sebuah TreeMap diurutkan berdasarkan urutan alami kuncinya, atau oleh Pembanding yang disediakan pada waktu pembuatan. Penerapan ini tidak mengizinkan null tetapi mempertahankanmemesan elemennya. Berikut adalah contoh program yang mendemonstrasikan kelas TreeMap.
package MyPackage import java.util. * class TreeMapEx {public static void main (String [] args) {Map course = new TreeMap () // Tambahkan beberapa kursus. course.put ('Kursus Java', Integer baru (3)) kursus.put ('Kursus AWS', Integer baru (7)) kursus.put ('Kursus Pemrograman', Integer baru (8)) kursus.put (' Kursus Ilmu Data ', Integer baru (2)) System.out.println (' Total kursus: '+ kursus.size ()) Setst = course.entrySet () untuk (Map.Entry me: st) {System.out.print (me.getKey () + ':') System.out.println (me.getValue ())} System.out. println ()}}
Keluaran
Total kursus: 4 Kursus AWS: 7 Kursus Ilmu Data: 2 Kursus Java: 3 Kursus Pemrograman: 8
Dalam output, elemen peta dicetak dalam urutan leksikografik yang ketat, yang tidak muncul di contoh HashMap sebelumnya. Kelas berikutnya yang akan kita bahas adalah LinkedHashMap .
Kelas LinkedHashMap
Seperti namanya, implementasi antarmuka Java Map ini menggunakan tabel hash dan daftar tertaut sebagai struktur data yang mendasarinya. Jadi urutan LinkedHashMap adalahdapat diprediksi, dengan urutan penyisipan sebagai urutan default. Juga, memungkinkan nulls seperti di HashMap. Berikut adalah contoh program yang mendemonstrasikan kelas TreeMap.
paket MyPackage import java.util. * public class LinkedHashMapExample {public static void main (String a []) {LinkedHashMap course = new LinkedHashMap () course.put ('Java Kursus', new Integer (3)) course.put (' Kursus Cloud ', kursus Integer (7) baru.put (' Kursus Pemrograman ', Kursus Integer baru (8)) kursus.put (' Kursus Ilmu Data ', Integer baru (2)) // Ini mencetak elemen dalam urutan yang sama // saat mereka dimasukkan System.out.println (kursus) System.out.println ('Total kursus:' + kursus.size ()) System.out.println ('Berisi kunci' Hadoop '?' + kursus.containsKey ('Hadoop')) System.out.println ('Mendapatkan nilai untuk' Programming Kursus ':' + kursus.get ('Kursus Pemrograman')) System.out.println ('Apakah peta kosong?' + Kursus.isEmpty ()) System.out.println ('hapus elemen' Kursus Cloud ':' + kursus.remove ('Kursus Cloud')) System.out.println (kursus)}}
Keluaran
{Kursus Java = 3, Kursus Cloud = 7, Kursus Pemrograman = 8, Kursus Sains Data = 2} Total kursus: 4 Berisi kunci 'Hadoop'? false Mendapatkan nilai untuk 'Kursus Pemrograman' kunci: 8 Apakah peta kosong? false delete element 'Kursus Cloud': 7 {Kursus Java = 3, Kursus Pemrograman = 8, Kursus Sains Data = 2}
Program contoh cukup sederhana untuk dipahami. Saya telah menggunakan beberapa metode dasar untuk mendemonstrasikan fungsi LinkeHashMap di Java. Seperti yang saya katakan sebelumnya di sana selain ketiga ini ada banyak kelas lain yang mengimplementasikan antarmuka Java Map.
Ini membawa kita ke bagian akhir artikel 'Antarmuka Peta Java' ini. Saya telah membahas salah satu topik menarik tentang Java, yaitu antarmuka Peta di Jawa.
Pastikan Anda berlatih sebanyak mungkin dan mengembalikan pengalaman Anda.
Lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Kami di sini untuk membantu Anda dengan setiap langkah dalam perjalanan Anda, untuk menjadi selain pertanyaan wawancara java ini, kami hadir dengan kurikulum yang dirancang untuk siswa dan profesional yang ingin menjadi Pengembang Java.
Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar pada 'antarmuka peta java' ini artikel dan kami akan menghubungi Anda kembali sesegera mungkin.