The && operator is the logical AND and is used in Boolean operations that compare two values, for example: if( a > 5 && a < 10 ) ... This will evaluate to true only with a value between 5 and 10. The & operator is the bitwise AND and is used when performing the bitwise AND of type numbers. For example: 3 & 9 = 1, or explicitly 0000 0011 & 0000 1001 = 0000 0001 |