1) | : or 라는 비트 연산이고 값이 서로 있으면 1, 아니면 0


int val = 2 | 2; // 1

int val2 = 2 | 0; // 1




2) & : and라는 비트연산이고 값이 하나라도 0이면 0이다. 그 외 1


int val = 2 & 2; // 1

int val2 = 2 & 0; // 0