본문 바로가기
Back-End/Java

[Java] 단락 평가(SCE : Short Circuit Evaluation)

by dev_david 2020. 12. 30.

논리 연산자 && 혹은 ||를 포함한 연산 결과 True/False에서 앞의 연산을 통해서

뒤의 연산 결과 여부와 상관없이 결과가 확실하다면 

 

"나머지 연산을 수행할 필요가 없을 때 사용된다"

 

//&& 조건
if (vo != null && vo.getUserName() == "유저") {
    System.Out.Println("ㅋ")
}

//|| 조건
if (vo == null || vo.getUserId() < 5) {
    System.Out.Println("ㅋ")
}

 

- && 조건(false를 만났을 시 뒤의 연산 X)

"vo != null"이라는 조건에서

vo == null가 false라면

vo.getUserName() == "유저"의 연산을 실행하지 않고 결과 도출

 

- || 조건(True를 만났을 시 뒤의 연산 X)

"vo != null"이라는 조건에서

vo == null가 true라면

vo.getUserId() < 5의 연산을 실행하지 않고 결과 도출

 

정리

true && true // true
true && false // false
true || false // true
false || true // true

'Back-End > Java' 카테고리의 다른 글

[Java] 묵시적 형변환/명시적 형변환  (0) 2020.12.31