Both Java and C++ have two AND operators and two OR operators. && and || are the most commonly used because they typically appear in boolean expressions. & and | are usually used for bitwise manipulation, but can be used in boolean expressions as well. However, the behavior is slightly different because && and || "shortcut" the evaluation of the right operand depending on the value of the left one. You can search these forums or google for "shortcut operators" to find out more about this.