
Belajar Java: Mengenal dan Memahami Class HashMap di Java
Jika kamu sebelumnya pernah belajar tentang Array dan ArrayList, maka saya yakin kamu akan mudah mencerna materi ini. Pada kesempatan kali ini, kita akan belajar tentang HashMap. HashMap kadang sering digunakan dalam pembuatan aplikasi Java. Karena itu, HashMap penting untuk kita ketahui.
Apa itu HashMap?
Class HashMap
merupakan class turunan dari class AbstractMap
dan implementasi dari interface Map
.

HashMap adalah sebuah class yang berisi sekumpulan pasangan nilai (value) dan kunci (key). Nilai bisa dalam bentuk string, integer, boolean, float, double, dan objek. Sedangkan untuk key biasanya dalam bentuk string dan integer. HashMap bisa dibilang seperti Array asosiatif dalam Java. Coba perhatikan tabel berikut:

Tabel di atas terdiri dari pasangan key dan value, seperti inilah isi dari class atau objek HashMap.
Cara Membuat HashMap
Sebelum bisa menggunakan HashMap, kita harus mengimpornya terlebih dahulu:
import java.util.HashMap;
Setelah itu baru kita bisa menggunakannya. Nah!, untuk menggunakan HashMap, kita harus membuat objeknya terlebih dahulu. Objek dari Hashmap dapat dibuat dengan kata kunci new
. Namun, ada sedikit tambahan untuk menentukan tipe data untuk key dan value yang akan disimpan.

Contoh:
HashMap<Integer, String> days = new HashMap<Integer,String>
Pada contoh di atas, kita membuat objek HashMap bernama days
. Objek ini dapat kita gunakan untuk menyimpan koleksi data.
Tipe data yang digunakan untuk key adalah Integer
dan value adalah String
.
Artinya: key harus bertipe Integer
dan nilai yang tersimpan harus dalam bertipe String.
Untuk lebih jelasnya, silahkan lanjutkan…
Mengisi Nilai ke HashMap
Tadi kita sudah membuat objek hashmap bernama days
dengan tipe data:
- K (key): Integer
- V (value): String
Untuk mengisi nilai ke objek days
, kita dapat menggunakan method put
seperti ini:
days.put(1, "Minggu");
days.put(2, "Senin");
days.put(3, "Selasa");
days.put(4, "Rabu");
days.put(5, "Kamis");
days.put(6, "Jum'at");
days.put(7, "Sabtu");
Perhatikan! Objek HashMap days
berisi nama-nama hari dengan key 1
–7
. Kalau tidak percaya, silahkan coba compile contoh program ini:
import java.util.HashMap;
public class CobaHashMap {
public static void main(String[] args) {
// membuat objek hashmap
HashMap<Integer, String> days = new HashMap<Integer,String>();
// mengisi nilai ke objek days
days.put(1, "Minggu");
days.put(2, "Senin");
days.put(3, "Selasa");
days.put(4, "Rabu");
days.put(5, "Kamis");
days.put(6, "Jum'at");
days.put(7, "Sabtu");
// mencetak semua isi dari objek days
System.out.println("Isi objek days: " + days);
}
}
Hasilnya:

Mengambil Nilai dari HashMap
Untuk mengambil nilai dari HashMap, kita bisa menggunakan method get()
dengan parameter kuncinya.
Contoh:
// mengambil hari senin
days.get(2)
Parhatikan!
Kenapa di sana kita isi parameternya 2
?
Jawabannya karena kita ingin mengambil nilai senin dan nilai tersebut telah diasosiasikan pada objek HashMap dengan key 2
.
Contoh kode lengkap:
import java.util.HashMap;
public class CobaHashMap {
public static void main(String[] args) {
// membuat objek hashmap
HashMap<Integer, String> days = new HashMap<Integer,String>();
// mengisi nilai ke objek days
days.put(1, "Minggu");
days.put(2, "Senin");
days.put(3, "Selasa");
days.put(4, "Rabu");
days.put(5, "Kamis");
days.put(6, "Jum'at");
days.put(7, "Sabtu");
// mencetak semua isi dari objek days
System.out.println("Isi objek days: " + days);
// mengambil hari senin
System.out.println("Hari kedua: " + days.get(2));
}
}
Hasilnya:

Coba juga untuk mengambil nilai yang lain, seperti Rabu, Kamis, dan Jum’at.
Menghapus Nilai dari HashMap
Ada dua method yang dapat digunakan untuk menghapus nilai dari HashMap:
remove()
menghapus salah satu nilai;clear()
menghapus semua nilai;
Mari kita coba:
import java.util.HashMap;
public class CobaHashMap {
public static void main(String[] args) {
// membuat objek hashmap
HashMap<Integer, String> days = new HashMap<Integer,String>();
// mengisi nilai ke objek days
days.put(1, "Minggu");
days.put(2, "Senin");
days.put(3, "Selasa");
days.put(4, "Rabu");
days.put(5, "Kamis");
days.put(6, "Jum'at");
days.put(7, "Sabtu");
// mencetak semua isi dari objek days
System.out.println("Isi objek days: " + days);
System.out.println("Hari kedua: " + days.get(2));
// menghapus malam minggu <-- jomblo detected :D
days.remove(1);
System.out.println("Isi objek days: " + days);
// menghapus semua hari <-- oh tidak kiamat donk!
days.clear();
System.out.println("Isi objek days: " + days);
}
}
Hasilnya:

Mengubah Nilai dan Kunci dari HashMap
Ada dua method yang dapat digunakan untuk mengubah nilai di dalam HashMap:
- Method
put()
- Method
replace()
Apa bedanya? Saya kira tidak ada perbedaan. Keduanya sama-sama bisa digunakan untuk mengubah nilai. Namun, sepertinya untuk method replace()
nilai yang akan diubah harus sudah ada di dalam HashMap. Sedangkan untuk method put()
, dia akan menambahkan yang baru apabila belum ada di dalam HashMap. Mari kita coba:
import java.util.HashMap;
public class CobaHashMap {
public static void main(String[] args) {
// membuat objek hashmap
HashMap<Integer, String> days = new HashMap<Integer,String>();
// mengisi nilai ke objek days
days.put(1, "Minggu");
days.put(2, "Senin");
days.put(3, "Selasa");
days.put(4, "Rabu");
days.put(5, "Kamis");
days.put(6, "Jum'at");
days.put(7, "Sabtu");
// mengubah hari menggu menjadi hari ahad
days.put(1, "Ahad");
// mengubah hari rabu menjadi rabo
days.replace(4, "Rabo");
// mencetak semua isi dari objek days
System.out.println("Isi objek days: " + days);
}
}
Hasilnya:

Method-method HashMap
Method-method diatas adalah method-method yang biasa digunakan di dalam HashMap. Sebenarnya masih banyak lagi method lain yang perli kita coba-coba.
Untuk melihatnya, silahkan tekan tombol Ctrl
+Spasi
pada Netbeans saat menggunakan objek HashMap.

Berikut ini penjelasan beberapa method:
clear()
untuk membersihkan isi HashMap;isEmpty()
untuk mengecek apakah HashMap dalam keadaan kosong atau tidak;size()
untuk mengambil ukuran HashMap (jumlah item di dalam hashmap);values()
untuk mengambil semua nilai yang ada di dalam HashMap;keySet()
untuk mengambil semua key yang ada di dalam HashMap;clone()
untuk menggandakan objek HashMap;- dll.
Bonus: Contoh Program dengan HashMap
Program ini terdiri dari dua class, yaitu: Buku.java
dan BukuHashMap.java
. Kedua class ini berada dalam satu package. Pada program ini, kamu akan menemukan contoh HashMap yang berisi sekumpulan objek. Berikut ini isi class Buku.java
:
public class Buku {
private String title;
private String author;
public Buku(String title, String author) {
this.title = title;
this.author = author;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
}
Berikut ini isi class BukuHashMap.java
:
import java.util.HashMap;
import java.util.Map;
public class BukuHashMap {
public static void main(String[] args) {
// membuat objek hashmap
HashMap<String, Buku> books = new HashMap<String, Buku>();
// membuat objek buku
Buku bukuJava = new Buku("Tutorial Java", "Petani Kode");
Buku bukuKotlin = new Buku("Pemrograman Kotlin", "Petani Kode");
Buku bukuAndroid = new Buku("Pemrograman Android", "Petani Kode");
// mengisi objek hashmap dengan objek buku
books.put("java", bukuJava);
books.put("kotlin", bukuKotlin);
books.put("android", bukuAndroid);
// cetak semua buku
for(Map.Entry b: books.entrySet()){
Buku buku = (Buku) b.getValue();
System.out.println(b.getKey() + ": "+ buku.getTitle());
}
}
}
Silahkan coba compile sendiri dan pahami maksud dari kode program di atas.
Berikut ini hasil outputnya:

Akhirnya selesai juga kita belajar “Mengenal dan Memahami Class HashMap di Java”. Gimana? Seru, kan? Sekarang, yuk perdalam pengetahuanmu tentang pemrograman di Java dengan membaca artikel berikut!
Belajar Java: Menggunakan Prosedur dan Fungsi untuk Membuat Sub-program | Belajar Java OOP: Memahami Konsep Dasar OOP (untuk Pemula) | Belajar Java OOP: Memahami Inheritance dan Method Overriding
Recent Post
-
YouTube Uji Coba Paket Premium Duo Hemat untuk Dua Orang
-
RSUD Bunda Gunakan Teknologi Robotik Gen 2 untuk Operasi yang Lebih Aman
-
Google Bocorkan Desain Android Terbaru yang Lebih Ekspresif
-
Apple Kirim Peringatan Serangan Spyware ke Pengguna iPhone
-
Mistral AI, Inovasi Kecerdasan Buatan dari Prancis yang Saingi ChatGPT
-
TikTok Didenda Rp 9,8 Triliun Karena Ketahuan Kirim Data Pengguna ke China
-
Amazon Nova Premier Hadir dengan Kapasitas Konteks hingga 1 Juta Token
-
Fortnite Kembali Hadir di App Store, Apple Kalah di Pengadilan
Categories
- Business (150)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (364)
- Tips and Trick (73)
- Toko Online (2)
- Uncategorized (25)
- Video & Tips (13)
- Wesclic (30)
Tags
Read More
YouTube Uji Coba Paket Premium Duo Hemat untuk Dua Orang
titah 08/05/2025 0YouTube selalu berusaha memberikan pengalaman terbaik bagi penggunanya. Untuk itu, mereka kini tengah menguji coba paket Premium Duo, yang memungkinkan dua orang untuk berbagi langganan…
RSUD Bunda Gunakan Teknologi Robotik Gen 2 untuk Operasi yang Lebih Aman
titah 08/05/2025 0Teknologi di dunia medis terus berkembang dan membawa banyak perubahan. Salah satu inovasi terbaru yang…
Google Bocorkan Desain Android Terbaru yang Lebih Ekspresif
titah 08/05/2025 0Google selalu berusaha meningkatkan pengalaman pengguna Android melalui desain yang lebih menarik dan mudah digunakan.…
Apple Kirim Peringatan Serangan Spyware ke Pengguna iPhone
titah 08/05/2025 0Perangkat digital, terutama smartphone, kini menjadi bagian penting dalam kehidupan sehari-hari. Mulai dari komunikasi hingga…
Mistral AI, Inovasi Kecerdasan Buatan dari Prancis yang Saingi ChatGPT
titah 08/05/2025 0Mistral AI, sebuah perusahaan asal Prancis, mulai mencuri perhatian dunia dengan kemajuan teknologi kecerdasan buatannya.…
Categories
- Business (150)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (364)
- Tips and Trick (73)
- Toko Online (2)
- Uncategorized (25)
- Video & Tips (13)
- Wesclic (30)
Popular Tags