1. 선택문(Selection Statement)
- 실행 흐름에 분기점을 만들어 특정 조건을 만족할 때(특정 조건이 참일 때)만 코드를 실행하게 한다
- 때문에 어떤 값을 참으로 여기는지 지정해주어야 한다
- 참고 자료로서 링크를 남겨둔다
2. 진리값(Truth Value)
- 진리값은 명제의 내용이 참인지 거짓인지를 나타내는 값을 의미한다
- 영어의 True와 False를 따라 T를 참, F를 거짓으로 나타내기도 하며 진위값, 논리값(Logical Value)이라고 하기도 한다
- 진리값은 프로그래밍에서 논리연산에서 이용된다
- 참과 거짓 판별은 값에 의해 결정되는 데 0일 경우 거짓, 0 이외의 값은 모두 참으로 판단한다
- 각 타입에 따른 진리값을 나타내면 다음과 같다
- int
- 12345는 참, 0은 거짓
- 0b11011011은 참, 0b00000000는 거짓
- float
- 12.34는 참, 0은 거짓
- 0b01000001010001010111000010100100는 참, 0b00000000000000000000000000000000은 거짓
- string
- string str = “Sun&Moon Fighting!”는 참, string str = null 은 거짓
- bool
3. 불리언 타입(Boolean Type)
- 참, 거짓의 데이터를 저장할 수 있는 타입을 불리언(Boolean) 타입이라 한다
- 조건을 평가하는 곳은 모두 불리언 타입을 사용한다
- 논리 연산자(Logical Operators)는 불리언 타입에 적용할 수 있다
- & 는 논리 AND 연산자, | 는 논리 OR 연산자
- && 는 조건부 AND 연산자, || 는 조건부 OR 연산자가 된다. 차이점으로서 &와 |는 불리언 타입에도, 비트 단위 연산(숫자 연산)에도 사용할 수 있지만 &&와 ||는 불리언 연산에만 적용될 수 있다
- && 연산자나 || 연산자의 경우 왼쪽 피연산자의 진리값이 참이냐 거짓이냐에 따라 오른쪽 피연산자의 진리값을 계산하지 않아도 최종 결과 값을 알 수 있다
- 이를 단축 평가(Short-Circuit Evaluation)라 한다
- 특정 상황에서 계산 비용이 많이 드는 작업을 피하는 데 유용하다
- 두번째 인수가 런타임 오류를 유발할 수 있는 첫번째 인수에 대한 검사를 진행할 수 있다
- 드모르간의 법칙을 사용해 가독성 높게 식을 작성할 수 있다 참고 자료
- 비교 연산자(Comparison Operator)는 비교 결과에 따라 진리값을 내놓는다
- 대표적으로 <, >, == 등의 연산자가 있다
4. if 문
- if 문은 참으로 판명될 시 명령을 수행하거나 정보를 표시하는 구문이다
- 다음의 예시를 들어 설명하면 0이 입력될 경우 첫번째 구문, 1이 입력될 경우 두번째 구문을 출력하며 모든 상황에 속하지 않는 예외 상황일 경우 else {} 안의 구문이 실행된다
5. 삼항 연산자(Ternary Conditional Operator)
- 삼항 연산자는 if-else를 좀 더 간단하게 사용할 수 있다
- 간단하게 사용할 수 있지만 가독성이 떨어진다는 단점이 있다. 한마디로 직관적이지 못하다
6. switch 문
- 프로그램 실행의 제어 흐름을 변경하기 위해 변수 또는 표현식 값을 허용하는데 사용되는 제어 구문이다
- 조건이 다양할 경우 유용하다