! — «отрицание», унарный оператор, меняет значение на противоположное (инвертирует: ложь превращает в истину, а истину — в ложь).
&& — логическое «и» («конъюнкция», «пересечение»), бинарная операция, возвращает истинное значение тогда и только тогда, когда оба операнда истины.
|| — логическое «или» («дизъюнкция», «объединение»), бинарная операция, возвращает истинное значение, когда хотя бы один из операндов истинный.