Если оба операнда имеют значение true, тогда операторы & и && возвращают true. Если хотя бы один операнд имеет значение true, тогда операторы | и || возвращают true. Операторы & и | всегда проверяют значение обоих операндов. && и || носят название операторов короткой схемы, так как если результат булевого выражения может быть определён из левого операнда, правый операнд не вычисляется. Примечание: || и && могут быть использованы только в логических выражениях. Github: https://github.com/DEBAGanov