Wednesday, August 15, 2018

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. 


 Keduanya memang mempunyai fungsi yang sama  Belajar Mengenal Perbedaan == dan .equals() di Program 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 :


 Keduanya memang mempunyai fungsi yang sama  Belajar Mengenal Perbedaan == dan .equals() di Program Java
Contoh Code



Output :

 Keduanya memang mempunyai fungsi yang sama  Belajar Mengenal Perbedaan == dan .equals() di Program Java
Output Hasil


Penjelasan :


Contoh perbedaan penggunaan operator  == dan  method .equals() dari pola code kegiatan di atas , kalian sanggup perhatikan pada gambar di bawah:



 Keduanya memang mempunyai fungsi yang sama  Belajar Mengenal Perbedaan == dan .equals() di Program Java
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