Programming/Java
[Java] 연산자 - SCE, 비트
코딩하는 랄로
2023. 9. 20. 23:05
반응형
Lazy Evaluation
직역하면 게으른 계산으로 Short-Circuit Evaluation(SCE)이라고도 한다. 이전 글에서 배운 논리연산자를 사용할 때 활용할 수 있는 방법이다.
논리연산자를 통해 조건식을 표현할 때, 뒤의 조건식을 보지 않더라도 전체 조건식의 리턴값을 알 수 있다면, 굳이 조건식에 포함되어 있는 모든 조건식을 검사할 필요가 없는 것이다. 그래서 자바는 이러한 상황에 Lazy Evaluation, SCE를 적용하여 결과값을 확실해지는 곳까지만 계산한다.
- A && B : A가 거짓이면 B가 무엇이 되든 거짓이 되기 때문에 B는 연산이 이루어지지 않는다.
- A || B : A가 참이면 B가 무엇이 되든 참이기 때문에 B는 연산이 이루어지지 않는다
비트연산자
비트 연산자는 말 그대로 bit, 즉 0 과 1을 피연산자로서 연산을 하기 위한 연산자이다.
- a & b : a, b 모두 1이면 결과도 1, 그 외에는 0
- a | b : a, b 모두 0이면 결과도 0, 그 외에는 1
- a ^ b : a, b 둘 중 하나만 1이 있는 경우는 1, 그 외에는 0 = 둘이 같으면 0, 다르면 1
- ~a : a가 1이면 0, a가 0이면 1
비트 연산자를 살펴보면 1을 참으로 0을 거짓으로 생각할 경우, 논리연산자와 똑같이 동작하는 것을 볼 수 있다.
반응형