Android Kotlin short-circuit evaluation

사용 언어: Kotlin 1.9.22
사용 버전: Kotlin Playground


안드로이드 코틀린 short-circuit evaluation을 알아보겠습니다.





문서를 보던 중, short-circuit evaluation 이란 단어를 보게 되었습니다.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/or.html



Short-circuit evaluation은 minimal evaluation 또는 McCarthy evaluation 등으로도 불립니다.

우리나라 말로 번역하자면, 단축 평가 또는 단락 평가가 되겠군요. 전자공학을 전공한 저로서는 short-circuit을 보면 단락이 생각나네요.





그래서 short-circuit evaluation이 뭐냐 하면은 논리 연산인 AND와 OR의 경우 하나의 조건만 보고 다음 조건을 확인하지 않는 것을 말합니다.



두 개의 조건이 있는 Boolean 연산자가 있다면, 첫 번째만 보고 두 번째는 생략할 수 있다는 것인데요.

AND의 경우 하나가 false 면 다른 하나가 뭐든 false이기 때문에 첫 번째 것만 보고 판단할 수 있습니다.

OR의 경우 하나가 true 면 다른 하나가 뭐든 true이기 때문에 첫 번째 것만 보고 판단할 수 있습니다.



코틀린의 '||'와 '&&'는 shortcut-circuit 기능을 사용합니다.



아래의 코드를 보시죠.






코드를 보시면, 10 / number은 원래 0으로 나누기 때문에 오류가 발생해야 합니다.

하지만, shortcut-circuit evaluation을 사용하기 때문에 두 번째까지 확인을 하지 않고 통과가 됩니다.





'or'의 경우는 shortcut-circuit evaluation을 사용하지 않기 때문에 모두 확인하는데요. 보시다시피 오류가 발생합니다.









'&&' 경우도 보시죠.








'and'로 변경하면 오류가 발생합니다.







끝.



카테고리: Android


댓글

이 블로그의 인기 게시물

Python urllib.parse.quote()

KiCad 시작하기 7 (FreeRoute 사용하기 2)

음악 총보(Score), 파트보(Part)

Forensics .pyc 파일 .py로 복구하기

KiCad 시작하기 3 (새로운 소자 추가하기)

Kivy 시작하기 12 (Pyinstaller로 exe 파일 만들기)

딩기 요트 명칭

Android Compose automation for getting localized images to use on Play Store app image

Android Default background color setting

Android App architecture: State holders and UI state