0
0
0
share
#java#hash#hashtable#hashmap
0 Reaksi
0 Komentar
Perbedaan-perbedaan Antara Hashtable dan HashMap di Java

HashTable dan HashMap adalah dua collection berbasis hash yang ada di Java untuk memetakan objek dalam bentuk pasangan key - value (kunci - nilai). Meskipun sama-sama berbasis hash namun keduanya memiliki beberapa perbedaan yang signifikan. Tanpa memahami perbedaan diantara Hashtable dan Hashmap, kita bisa saja menggunakan Hashtable di program yang seharusnya menggunakan HashMap sehingga program yang dibuat menemui masalah yang sulit untuk dicari dan diperbaiki.
Contoh Program HashMap
import java.util.HashMap; import java.util.Map; public class ContohHashMap { public static void main(String[] args) { // Deklarasi objek HashMap baru HashMap nilai = new HashMap<>(); // Menambahkan data ke objek nilai.put("Andi", 85.2); nilai.put("Budi", 100.0); nilai.put("Edi", 88.5); nilai.put("Fera", 87.20); // Mengakses data HaspMap dengan foreach for (Map.Entry hasil : nilai.entrySet()) { System.out.println(hasil.getKey() + " : " + hasil.getValue()); } } }
Contoh Program Hashtable
import java.util.Hashtable; import java.util.Map; public class ContohHashTable { public static void main(String[] args) { // Deklarasi objek Hashtable baru Hashtable nilai = new Hashtable<>(); // Menambahkan data ke objek nilai.put("Andi", 85.2); nilai.put("Budi", 100.0); nilai.put("Edi", 88.5); nilai.put("Fera", 87.20); // Mengakses data Hashtable dengan foreach for (Map.Entry hasil : nilai.entrySet()){ System.out.println(hasil.getKey() + " : " + hasil.getValue()); } } }
Sebelum melihat perbedaan diantara HashMap dan Hashtable, mari kita liaht persamaan yang mereka miliki.
Baca juga: Aplikasi CRUD Java Sederhana Menggunakan Database MySQL
Persamaan antara Hashtable dan HashMap di Java
Terdapat banyak persamaan yang dimiliki oleh Hashtable dan HashMap di Java yang sangat baik untuk diketahui. Persamaan ini juga akan membantu kita dalam menentukan perbedaan antara HashMap dan Hashtable.- Baik Hashtable maupun HashMap mengimplementasikan interface java.util.Map.
- Hashtable dan HashMap merupakan collection berbasis hash yang bekerja dengan prinsip-prinsip hashing.
- Hashtable dan HashMap memiliki performa constant time dalam menyimpan maupun mengambil objek-objek yang ada.
- Hashtable dan HashMap merupakan bagian dari framework collection di Java sejak JDK 4.
Perbedaan antara Hashtable dan HashMap di Java
Setelah membahas persamaan diantara keduanya, sekarang mari kita lihat perbedaan antara Hashtable dan HashMap.- Perbedaan yang paling mencolok adalah Hashtable adalah collection yang thread-safe dengankan HashMap tidak. Artinya apabila resource Hashtable digunakan dalam waktu yang bersamaan, maka dapat dipastikan bahwa data yang ada akan selalu memiliki hasil yang sama (datanya tersinkronisasi). Sedangkan, apabila kita menggunakan resource HashMap dalam waktu yang bersamaan, kita bisa saja mendapatkan hasil yang berbeda.
- Perbedaan kedua yang tak kalah penting adalah performanya. Karena HashMap tidak tersinkronisasi, maka ia memiliki performa yang lebih baik dibanding Hashtable(dalam hal kecepatan).
- Perbeddaan selanjutnya adalah bahwa Hastable Hashtable merupakan kelas obsolete yang artinya penggunaan Hashtable sudah tidak disarankan. Apabila ingin menggunakan Hashtable kita disarankan untuk menggunakan ConcurrentHasMap.
0
0
0
share