1.4.3.2 조건식
이 절에서는 문장에 관해 설명하고 있지만, if 문과 비슷한 조건식에 대해 이야기하려고 한다. 다음 조건식을 보도록 하자.
조건 ? true일 때의 결과 : false일 때의 결과
이 조건식의 결과는 조건이 true일 경우 두 번째 하위 표현식(즉, true일 때의 결과)이고 false일 경우 세 번째 하위 표현식(즉, false일 때의 결과)이 된다. 예를 들어 다음과 같은 조건식이 있다고 하자.
min = x <= y ? x : y;
이에 해당하는 if 문은 다음과 같다.
if (x <= y) min = x; else min = y;
초보자의 경우 두 번째 형태가 좀 더 읽기 쉬울 것이다. 반면에 숙련된 프로그래머들은 종종 간결한 첫 번째 형태를 선호한다.
?:는 표현식이므로 변수를 초기화하는 데 사용할 수 있다.
int x = f(a), y = x < 0 ? -x : 2 * x;