& Operator in Java with Examples
The & operator in Java has two definite functions:
- As a Relational Operator: & is used as a relational operator to check a conditional statement just like && operator. Both even give the same result, i.e. true if all conditions are true, false if any one condition is false.
However, there is a slight difference between them, which highlights the functionality of & operator:
- && operator: It only evaluates the next condition, if the condition before it is true. If anyone condition is false, it does not evaluate the statement any further.
- & operator: It evaluates all conditions even if they are false. Thus, any change in the data values due to the conditions will only be reflected in this case.
Example:
// Java program to demonstrate
// & operator as relational operator
import
java.io.*;
class
GFG {
public
static
void
main(String[] args)
{
int
x =
5
, y =
7
, z =
9
;
System.out.println(
"Demonstrating && operator"
);
if
((x > y) && (x++ > z))
;
else
System.out.println(
"Value of x: "
+ x);
System.out.println(
"\nDemonstrating & operator"
);
if
((x > y) & (x++ > z))
;
else
System.out.println(
"Value of x: "
+ x);
}
}
Output:Demonstrating && operator Value of x: 5 Demonstrating & operator Value of x: 6
- As a Bitwise AND: & operator is used for adding Bitwise numbers in Java. Bitwise numbers are binary numbers stored in the form of integers. Some people will ask what is the use of these Bitwise numbers anyway? Why not store every number in its decimal form and perform the normal operations using our traditional operators: +, -, /, %, *. Its because all our encoding and decoding of data is done in bits, as they allow packing a huge amount of information into a tiny space.
Example:
// Java program to demonstrate
// & operator as bitwise operator
import
java.io.*;
class
GFG {
public
static
void
main(String[] args)
{
int
a =
12
;
int
b =
25
;
System.out.println(
"Demonstrating & operator\n"
);
int
c = a & b;
System.out.println(a +
" & "
+ b +
" = "
+ c);
}
}
Output:Demonstrating & operator 12 & 25 = 8
Please Login to comment...