Belajar Mengenal Perbedaan == Dan .Equals() Di Kegiatan Java
Sebagian dari kalian ,pasti sering memakai method .equals() , dan operator (==) , untuk membandingkan kesamaan nilai pada kedua variable. Keduanya memang mempunyai fungsi yang sama ,tapi terdapat beberapa perbedaan ,jika kita pelajari lebih dalam lagi.
Salah satu perbedaan , yang paling utama dari keduanya, yaitu bila (==) yakni salah satu jenis operator relasi , yang dipakai untuk , perbandingan rujukan (perbandingan alamat lokasi memori) ,yang intinya untuk tipe data primitif menyerupai int , long , double ,dan lain sebagainya.
Sedangkan method .equals() , yakni salah satu method ,yang dipakai untuk membandingkan nilai objek sebenarnya(perbandingan konten) , yang berasal dari class Object (java.lang.Object) , yang merupakan induk dari semua class di java.
Pada artikel berguru java kali ini , kita akan mencoba mengenal perbedaan pola penggunaan operator == dan method .equals() , memakai bahasa pemrograman java. Selengkapnya ,berikut mari kita simak lebih lanjut :
1. Pertama buka IntelliJ IDEA ,atau Software IDE lain yang kalian gunakan , di Komputer atau Laptop kalian.
2. Kalian sanggup perhatikan Contoh code ,beserta penjelasanya di bawah:
Contoh Code :
Output :
Penjelasan :
Contoh perbedaan penggunaan operator == dan method .equals() dari pola code kegiatan di atas , kalian sanggup perhatikan pada gambar di bawah:
Pada pola code kegiatan di atas ,kita menginisialisasi nilai "okedroid" , pada variable kata1 ,kata2, dan kata3 , dengan tipe data String.
Selanjutnya , dengan memakai operator ==, pada perbandingan baris code System.out.println(kata1 == kata2); , akan menghasilkan nilai false ,dikarenakan kata1 mempunyai lokasi memori yang berbeda , dengan kata2. Meskipun kedua variable , mempunyai nilai atau value yang sama. Serta nilai objek ini , disimpan ke string pool
Pada baris code selanjutnya , yaitu System.out.println(kata3 == kata4); , akan menghasilkan nilai true. Dikarenakan pada baris code String kata4 = kata3; ,kita telah mereferensikan lokasi memori yang sama pada variable kata3 ke kata4. Serta nilai objek ini juga , disimpan ke string pool.
Selanjutnya , dengan memakai method equals() , pada baris code System.out.println(kata1.equals(kata2)); , dan System.out.println(kata1.equals(kata3)); ,akan menghasilkan nilai true. Dikarenakan kata1 , kata2 ,dan kata3 , mempunyai nilai value yang sama, meskipun lokasi memorinya berbeda. Serta nilai objek ini , disimpan ke memori heap.
Baca juga : Belajar Mengenal Perbedaan Alokasi Memori Stack vs Heap di Java
Point :
Baca juga : Contoh Penggunaan Method hashCode() dan equals() di Program Java
Contoh Code :
Contoh Code |
Output :
Output Hasil |
Penjelasan :
Contoh perbedaan penggunaan operator == dan method .equals() dari pola code kegiatan di atas , kalian sanggup perhatikan pada gambar di bawah:
Contoh Perbandingan Penggunaan Operator == ,dengan method equals() |
Pada pola code kegiatan di atas ,kita menginisialisasi nilai "okedroid" , pada variable kata1 ,kata2, dan kata3 , dengan tipe data String.
Selanjutnya , dengan memakai operator ==, pada perbandingan baris code System.out.println(kata1 == kata2); , akan menghasilkan nilai false ,dikarenakan kata1 mempunyai lokasi memori yang berbeda , dengan kata2. Meskipun kedua variable , mempunyai nilai atau value yang sama. Serta nilai objek ini , disimpan ke string pool
Pada baris code selanjutnya , yaitu System.out.println(kata3 == kata4); , akan menghasilkan nilai true. Dikarenakan pada baris code String kata4 = kata3; ,kita telah mereferensikan lokasi memori yang sama pada variable kata3 ke kata4. Serta nilai objek ini juga , disimpan ke string pool.
Selanjutnya , dengan memakai method equals() , pada baris code System.out.println(kata1.equals(kata2)); , dan System.out.println(kata1.equals(kata3)); ,akan menghasilkan nilai true. Dikarenakan kata1 , kata2 ,dan kata3 , mempunyai nilai value yang sama, meskipun lokasi memorinya berbeda. Serta nilai objek ini , disimpan ke memori heap.
Baca juga : Belajar Mengenal Perbedaan Alokasi Memori Stack vs Heap di Java
Point :
- Operator (==) : Pada dasarnya ,digunakan untuk tipe data primitif , membandingkan lokasi memori , pada objek.
- Method equals() : Pada dasarnya , dipakai untuk tipe data referensi , menyerupai class String, membandingkan nilai kasatmata pada objek.
Baca juga : Contoh Penggunaan Method hashCode() dan equals() di Program Java
EmoticonEmoticon