비트 연산자는 피연산자를 비트단위로 논리 연산한다. 피연산자를 이진수로 표현했을 때의 각 자리를 아래의 규칙에 따리 연산을 수행하며,
피연산자로 실수는 허용하지 않는다. 정수와 문자만 허용된다.
| (OR 연산자) : 피연산자 중 한 쪽의 값이 1이면, 1을 결과로 얻는다. 그 외에는 0
& (AND 연산자) : 피연산자 양 쪽이 모두 1이어야만 1을 결과로 얻는다. 그 외에는 0
^ (XOR 연산자) : 피연산자의 값이 서로 다를 때만 1을 결과로 얻는다. 그 외에는 0
피연산자를 2진수로 표현했을 때, 0은 1로, 1은 0으로 바꾼다. 논리부정 연산자 '!'와 유사
피연산자의 각 자리(2진수로 표현했을 때)를 오른쪽(>>) 또는 왼쪽(<<)으로 이동한다.
ex) 8 << 2 : 10진수 8의 2진수를 왼쪽으로 2자리 이동한다. (00001000 -> 00100000)
실행속도는 곱하기와 나누기 연산자보다 쉬프트 연산자가 빠르지만, 가독성 측면에서는 좋지 못하다.