# Programming Tutorials

## Boolean Logical Operators

By: aathishankaran Printer Friendly Format

Boolean Logical Operators

The boolean logical operators shown here operate only on boolean operands. All of the binary logical operators combine two boolean values to form a resultant boolean value.

Operator                     Result

&                                 Logical AND

|                                   Logical OR

^                                  Logical XOR

||                                   Short-circuit OR

&&                              Short-circuit AND

!                                   Logical unary NOT

&=                               AND assignment

|=                                 OR assignment

^=                                XOR assignment

==                                Equal to

!=                                 Not equal to

?:                                  Ternary if-then-else

The logical Boolean operators, &, |, and ^, operate on boolean values in the same way that they operate on the bits of an integer. The logical ! operator inverts the boolean state: !true == false and !false==true. The following table shows the effect of each logical operation:

A                     B                      A  |  B              A & B              A ^ B               ! A

False                False                False                False                False                True

True                 False                True                 False                True                 False

False                True                 True                 False                True                 True

True                 True                 True                 True                 False                False

Here is a program that is almost the same as the BitLogic example shown earlier, but it operates on boolean logical values instead of binary bits:

//Demonstrate the boolean logical

class BoolLogic {

public static void main(String args[]) {

boolean a = true;

boolean b = false;

boolean c = a | b;

boolean d = a & b;

boolean e = a ^ b;

boolean f = (!a & b) | (a & !b);

boolean g = !a;

System.out.println(â€œ      a = â€œ +a);

System.out.println(â€œ      b = â€œ +b);

System.out.println(â€œ   a|b = â€œ +c);

System.out.println(â€œ   a&b = â€œ +d);

System.out.println(â€œ   a^b = â€œ +e);

System.out.println(â€œ!a&b|a&!b = â€œ +f);

System.out.println(â€œ     !a = â€œ +g);

}

}

After running this program, you will see that the same logical rules apply to bollean values as they did to bits. As you can see from the following output, the string representation of a java boolean value is one of the literal values true or false:

a = true

b = false

a|b = false

a&b = false

a^b = true

!a&b|a&!b = true

!a = false

 Most Viewed Articles (in Java ) Latest Articles (in Java)

Comment on this tutorial