Java 삼항 연산자
선수학습(2개)
요약
Java 삼항 연산자의 기본 문법, boolean 조건식, 중첩 삼항의 오른쪽 결합, 연산자 우선순위와 타입 주의점을 정리합니다.
Java 삼항 연산자 핵심 정리
| 개념 | 설명 | 예시 |
|---|---|---|
| 기본 형태 | 조건에 따라 두 값 중 하나를 선택 | score >= 60 ? "P" : "F" |
| 조건식 | 반드시 boolean 결과여야 함 | n > 0, a == b |
| 결과 값 | 선택된 값을 변수에 저장하거나 바로 사용 | String r = ... |
| 중첩 삼항 | 오른쪽부터 묶어 읽음 | a ? b : c ? d : e |
삼항 연산자는 if-else문을 한 줄의 값 선택식으로 줄여 쓰는 문법입니다.
기본 문법 쌩기초
예를 들어 점수가 60점 이상이면 "P", 아니면 "F"를 저장할 수 있습니다.
같은 흐름을 if-else문으로 쓰면 다음과 같습니다.
식으로 사용할 수 있다 기초
삼항 연산자는 하나의 값을 만들어내는 식입니다. 그래서 변수에 저장하거나, 출력 함수 안에 바로 넣거나, return 뒤에 둘 수 있습니다.
반대로 System.out.print()처럼 값을 반환하지 않는 문장은 true일 때 값이나 false일 때 값 자리에 넣을 수 없습니다. 실행할 코드가 길어지면 일반 if-else문이 더 적합합니다.
중첩 삼항 연산자 기초
삼항 연산자 안에 또 다른 삼항 연산자를 넣을 수 있습니다.
이 식은 오른쪽부터 묶어 읽습니다.
계산 순서는 다음과 같습니다.
n > 5는5 > 5이므로 false입니다.- false 쪽인
n == 5 ? "B" : "C"를 계산합니다. n == 5는 true이므로"B"가 선택됩니다.
연산자 우선순위 기초
삼항 연산자 ?:는 연산자 우선순위가 낮은 편입니다. 비교 연산자, 논리 연산자 등이 먼저 계산되고, 그 결과가 삼항 연산자의 조건식이 됩니다.
계산 순서:
score >= 80→ truetrue && submitted→ true- 조건식이 true이므로
"A"선택
대입 연산자 =는 삼항 연산자보다 나중에 실행됩니다. 그래서 선택된 "A"가 마지막에 grade에 저장됩니다.
결과 값 타입 기초
삼항 연산자의 두 결과 값은 서로 호환되는 타입이어야 합니다.
서로 다른 타입을 섞으면 Java가 공통 타입으로 맞추려고 하거나, 상황에 따라 컴파일 에러가 날 수 있습니다. 시험 문제에서는 먼저 두 결과 값의 타입이 무엇인지 확인하고, 그 다음 조건식을 계산하세요.