Mingyu Kim

삼항(조건) 연산자

1. 구조와 문법

조건식 ?  또는 수식1 :  또는 수식2

2. 왜 사용하는가? (가독성과 간결함)

if-else를 사용하면 코드가 5줄 이상 길어질 수 있지만, 삼항 연산자를 쓰면 단 한 줄로 해결된다.

int score = 85;
String result;

// if-else 방식
if (score >= 60) {
  result = "합격";
} else {
  result = "불합격";
}

// 삼항 연산자 방식
String result = (score >= 60) ? "합격" : "불합격";

3. 디테일 포인트: 중첩 사용과 한계

중첩 삼항 연산자

삼항 연산자 안에 또 다른 삼항 연산자를 넣을 수 있다.

char grade = (score > 90) ? 'A' : ( (score > 80) ? 'B' : 'C' );

중첩을 너무 많이 하면 코드를 읽기가 힘들어지므로, 2단계 이상의 중첩은 if-elseswitch 문 사용을 권장한다.

타입의 일치

:을 기준으로 양쪽에 오는 값들은 타입이 호환되어야 한다.

int result = (score > 90) ? "A" : 0; // 컴파일 에러! (String과 int는 섞일 수 없음)

4. 실무 팁: return 문에서의 활용

메소드에서 조건에 따라 특정 값을 반환할 때

public int getAbsoluteValue(int n) {
  return (n >= 0) ? n : -n; // 절댓값 반환
}

5. 요약 및 체크포인트