Belajar Mengenal Perbedaan == dan .equals() di Program Java
Sebagian dari kalian ,pasti sering menggunakan method .equals() , dan operator (==) , untuk membandingkan kesamaan nilai pada kedua variable. Keduanya memang memiliki fungsi yang sama ,tapi terdapat beberapa perbedaan ,jika kita pelajari lebih dalam lagi.
Salah satu perbedaan , yang paling utama dari keduanya, yaitu jika (==) adalah salah satu jenis operator relasi , yang digunakan untuk , perbandingan referensi (perbandingan alamat lokasi memori) ,yang pada dasarnya untuk tipe data primitif seperti int , long , double ,dan lain sebagainya.
Sedangkan method .equals() , adalah salah satu method ,yang digunakan 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 belajar java kali ini , kita akan mencoba mengenal perbedaan contoh penggunaan operator == dan method .equals() , menggunakan 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 bisa perhatikan Contoh code ,beserta penjelasanya di bawah:
Contoh Code :
Output :
Penjelasan :
Contoh perbedaan penggunaan operator == dan method .equals() dari contoh code program di atas , kalian bisa perhatikan pada gambar di bawah:
Pada contoh code program di atas ,kita menginisialisasi nilai "okedroid" , pada variable kata1 ,kata2, dan kata3 , dengan tipe data String.
Selanjutnya , dengan menggunakan operator ==, pada perbandingan baris code System.out.println(kata1 == kata2); , akan menghasilkan nilai false ,dikarenakan kata1 memiliki 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 menggunakan 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 , memiliki 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 contoh code program di atas , kalian bisa perhatikan pada gambar di bawah:
Contoh Perbandingan Penggunaan Operator == ,dengan method equals() |
Pada contoh code program di atas ,kita menginisialisasi nilai "okedroid" , pada variable kata1 ,kata2, dan kata3 , dengan tipe data String.
Selanjutnya , dengan menggunakan operator ==, pada perbandingan baris code System.out.println(kata1 == kata2); , akan menghasilkan nilai false ,dikarenakan kata1 memiliki 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 menggunakan 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 , memiliki 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 , digunakan untuk tipe data referensi , seperti class String, membandingkan nilai aktual pada objek.
Baca juga : Contoh Penggunaan Method hashCode() dan equals() di Program Java
Post a Comment for "Belajar Mengenal Perbedaan == dan .equals() di Program Java"
Silakan berkomentar dengan baik ,jangan SPAM di komentar ini . NO BACKLINK /LINK HIDUP