Contoh Penggunaan Method hashCode() dan equals() di Program Java - Okedroid | Situs Blog Belajar Pemrograman Java Android
Okedroid | Situs Blog Belajar Pemrograman Java Android

Contoh Penggunaan Method hashCode() dan equals() di Program Java

Secara default , di dalam class libray java (java.lang.Object) terdapat dua method penting ,yang digunakan untuk perbandingan objek, kedua method tersebut yaitu .hashcode() , dan .equals().

Kedua method ini ,akan sangat berguna ,ketika digunakan untuk projek software , dalam skala besar. Untuk itu , pada artikel belajar java kali ini , kita akan mencoba mengenal definisinya , implementasi atau contoh penggunaanya , menggunakan bahasa pemrograman Java. Selengkapnya ,berikut mari kita simak lebih lanjut :



Contoh Penggunaan fungsi Method hashCode() dan equals() custom objek cek duplikat duplikasi data nilai di Program Java




1. Sebelumnya ,kita perlu mengetahui definisi dari method .hashcode() , dan .equals().

  • Method equals()
Method equals() adalah salah satu  method yang didefinisikan secara default , di class libray java (java.lang.Object) , yang dimana fungsinya digunakan untuk membandingkan kesamaan nilai , pada suatu objek . Kedua objek akan dikatakan sama atau equals ,jika keduanya menyimpan konten atau nilai value yang sama. 


  • Method hashcode()

Method hashcode() adalah salah satu method yang didefinisikan secara default , di class library java (java.lang.Object) , yang dimana fungsinya untuk mengembalikan representasi integer dari alamat memori objek. Jadi secara default , method ini akan mengembalikan nilai integer ,secara random dan unik , pada setiap instansi. Tiap integer ini akan berubah ,tergantung , dari setiap eksekusi aplikasi.


2. Selanjutnya , kalian buka IntelliJ IDEA ,atau Software IDE lain yang kalian gunakan , di Komputer atau Laptop kalian.


3. Kalian bisa perhatikan contoh code ,beserta penjelasanya di bawah :

Contoh Code :



Mobil.java


Contoh Code Class Mobil di Program Java
Contoh Code

Penjelasan :

Pada contoh code program di atas , kita membuat class Mobil ,lalu kita deklarasikan variable nomor ,dengan tipe data integer dan namaMerk ,dengan tipe data String.

Selanjutnya ,kita membuat constructor milik class Mobil ,dengan parameter , untuk mengembalikan nilai pada kedua variable.

Lalu kita membuat method .toString() , untuk mengembalikan nilai string pada objek.


Main.java


Contoh Code instansi objek dari custom class objek Mobil Hashset dan HashMap di Java
Contoh Code


Penjelasan :


Pada contoh code program di atas ,kita menginstansi objek mobil1 ,mobil2 ,mobil3 ,dan mobil4 , lalu mendefinisikan nilai argumentnya , pada constructor.

Disini kita akan menggunakan class library collection ,seperti HashMap dan HashSet , untuk mengorganisasikan data.

Selanjutnya ,kita menginstansi objek map dan set.  Lalu kita tambahkan nilai atau valuenya ,dengan method .put() dan .add().

Setelah itu ,kita tampilkan output hasilnya.

Output :

Output Hasil terjadi duplikat duplikasi data nilai value pada class objek di java
Output Hasil


Seperti yang sudah di jelaskan , pada artikel sebelumnya  , saat kita menggunakan HashMap , kita menggunakan tipe data berpasangan yaitu key-value. Semua key ,yang didefinisikan nilainya , harus unik , jadi tidak boleh sama. Sedangkan HashSet , semua nilai yang didefinisikan juga harus unik ,tidak boleh duplikat satu sama lain.

Nah , pada contoh kasus di atas ,kita tidak menggunakan tipe data primitif , tapi kita menggunakan custom objek dari class Mobil ,yaitu mobil1 ,mobil2 ,mobil3 ,dan mobil4,  yang telah kita definisikan nilainya.
 

Hasilnya ,akan terjadi duplikasi data, saat kita mencoba menjalankan programnya. Dikarenakan objek dari Set dan Map , tidak dapat  mengenali dan memeriksa konten objek , dari class Mobil


Untuk itu , kita perlu mengoveride atau menggunakan method .hashCode() dan .equals() , di dalam class Mobil , agar objek dapat dikenali , lalu di cek kondisi jika terjadi duplikasi data.


4. Pada class Mobil ,jika kalian menggunakan IntelliJ IDEA , kalian cukup tekan tombol Alt + Insert di keyboard.



Lalu pada jendela pop-up Generate , kalian pilih equals() and hashcode.



Generate > equals() and hashcode di intellij idea program java
Generate > equals() and hashcode

Pada jendela Generate equals() and hashCode() , kalian pilih tombol Next ,sampai Finish.


Generate equals() and hashCode() di intellij idea program java
Generate equals() and hashCode()

Hasilnya akan menjadi seperti contoh code berikut :


Mobil.java


Contoh Code class mobil dengan definisi fungsi method override hashcode and equals di java
Contoh Code

Penjelasan :


Seperti yang kalian lihat , pada contoh code program di atas ,otomatis kita telah mendefinisikan method .equals() dan .hashcode() , yang akan kita gunakan  untuk variable nomor ,dan namaMerk dalam class Mobil.

Setelah itu ,kita kembali jalankan programnya.

Hasilnya ,tidak ada lagi duplikasi data ,seperti output hasil sebelumnya.


Output Hasil :


Output Hasil tidak ada menghilangkan mencegah duplikasi data nilai value dari method hashcode dan equals di java
Output Hasil

Baca juga : Belajar Mengenal Perbedaan == dan .equals() di Program Java


Tag : Tutorial Belajar Java

data-matched-content-ui-type="image_card_stacked" data-matched-content-rows-num="2" data-matched-content-columns-num="4"
0 Komentar untuk "Contoh Penggunaan Method hashCode() dan equals() di Program Java"

Silakan berkomentar dengan baik ,jangan SPAM di komentar ini . NO BACKLINK /LINK HIDUP

Back To Top