# Operators

Simple summary of operators in Java.

## Bitwise operators

### AND

AND operator produces `1` only if both numbers are `1`. So, `1 | 2` should produce `0`. On the other hand, `1 | 3` should print `1`, becuase they will have one `1` in common (then 1 in the middle of that binary number).

```
int one = 1; // is 001 in binary
int two = 2; // is 010 in binary
int three = 3; // is 011 in binary

int and = one & two;
System.out.println(and); // prints out 0

one &= three;
System.out.println(one) // prints out 1
```

### OR

`001 OR 010` will result in `011`, which is 3. Also `011 OR 011` will result in the same number. Because you need to take each binary number and apply OR. Lets take 1 and 0 from the first example, that are on zeroth position, 001 and 010, `1 OR 0` results in 1. `1 OR 1` results in 1. `0 OR 1` results in 1.

```
int one = 1; // is 001 in binary
int two = 2; // is 010 in binary
int three = 3; // is 011 in binary

int or = one | two; 
System.out.println(or); // prints out 3

or |= three;
System.out.println(or);// prints out 3
```
