비트연산자
- 비트(bit) 단위 논리 연산을 할 때 사용
- 비트 단위로 좌/우로 전체 비트 이동 시 사용
- 1의 보수 만들 시 사용
비트 연산자 표
더보기
| 비트 연산자 | 설명 |
| ~ | 비트를 1이면 0, 0이면 1로 반전. (비트 NOT 연산자) |
| & | 대응되는 비트가 모두 1이면 1을 반환. (비트 AND 연산자) |
| | | 대응되는 비트 중 하나라도 1이면 1을 반환. (비트 OR 연산자) |
| ^ | 대응되는 비트가 서로 다르면 1을 반환.(비트 XOR 연산자) |
| << | 지정한 수 만큼 비트를 전부 좌측으로 이동. (left shift 연산자) |
| >> | 지정한 수 만큼 비트를 전부 우측으로 이동. (right shift 연산자) |
<< (left shift 연산자)
- left shift 연산자 문법
피연산자<<이동할비트수
public class Main {
public static void main(String[] args) {
int A = 14;
System.out.println("14 << 2 : 왼쪽으로 이동, 결과는 이진수 " + Integer.toBinaryString(A<<2));
}
}
> 출력
> 14 << 2 : 왼쪽으로 이동, 결과는 이진수 111000
>> (right shift 연산자)
- right shift 연산자 문법
피연산자>>이동할비트수
public class Main {
public static void main(String[] args) {
int A = 14;
System.out.println("14 >> 2 : 오른쪽으로 이동, 결과는 이진수 " + Integer.toBinaryString(A>>2));
}
}
> 출력
> 14 >> 2 : 오른쪽으로 이동, 결과는 이진수 11'Java' 카테고리의 다른 글
| [Java] Kruskal Algorithm (0) | 2023.02.01 |
|---|---|
| [Java] 객체 정렬 인터페이스 Comparable vs Comparator (2) | 2023.01.18 |
| [Java] Design Pattern - State Pattern (0) | 2022.12.19 |
| [Java] Scanner VS BufferedReader (0) | 2022.12.16 |
| [Java-Effective] JVM (0) | 2022.12.16 |