& and 0 0 0 0 1 0 1 0 0 1 1 1 | or 0 0 0 0 1 1 1 0 1 1 1 1 ^ xor 0 0 0 0 1 1 1 0 1 1 1 0 ~ not 0 1 1 0 tips (intNum & 1) == 0 then intNum is even 3 & 1 => 0011 & 0001 = 0001 ie 1 decimal (not even) 4 & 1 => 0100 & 0001 = 0000 ie 0 decimal (is even)