Penggunaan && (logika AND) dan & (boolean logika AND)

Berikut ini adalah tabel kebenaran untuk && dan &,

Perbedaan dasar antara operator && dan & adalah bahwa && mensupports short-circuit evaluations (atau       evaluasi perbagian), sementara operator & tidak. Apa arti dari pernyataan tersebut? Diberikan suatu pernyataan,

exp1 && exp2

&& akan mengevaluasi pernyataan exp1, dan segera mengembalikan nilai false dan menyatakan bahwa exp1 bernilai false. Jika exp1 bernilai false, operator tidak akan pernah mengevaluasi exp2 karena hasil operasi operator akan menjadi false tanpa memperhatikan nilai dari exp2. Sebaliknya, operator & selalu mengevaluasi kedua nilai dari exp1 dan exp2 sebelum mengembalikan suatu nilai jawaban. Berikut ini adalah suatu contoh source code yang menggunakan logika dan boolean AND,

public class TestAND
{
 public static void main( String[] args ){

  int  i  = 0;
  int  j  = 10; 
  boolean test= false; 

  //demonstrasi &&
  test = (i > 10) && (j++ > 9);
  System.out.println(i);
  System.out.println(j);
  System.out.println(test);

  //demonstrasi &
  test = (i > 10) & (j++ > 9); 
  System.out.println(i); 
  System.out.println(j);
System.out.println(test);
 }
}

The output of the program is,

0 
10
false
0
11
false

Catatan, Bahwa j++ pada baris yang mengandung operator && tidak dievaluasi sejak pernyataan pertama (i>10) yaitu telah bernilai sama dengan false.

Penggunaan && (logika AND) dan & (boolean logika AND)

You can leave a response, or trackback from your own site.

Leave a Reply


5 − = 2