삼항연산자
삼항 연산자는 조건식을 가지고 반환할 피연산자를 선택하는 동작을 하기 때문에 조건 연산자라고도 부른다. 이름에서 알 수 있듯 조건식의 결과에 따라 값을 반환하기 때문에, if문과 비슷한 역할을 수행할 수 있다. 이번 글에서는 삼항연산자를 중첩 사용해서 if문을 대체하는 연습을 해보겠다.
삼항연산자의 사용
(조건식)? 참 : 거짓;
int a = 20;
int b = 10;
System.out.println((a > b)? "a가 b보다 크다." : "b가 a보다 크다.");
// "a가 b보다 크다." 출력
삼항연산자의 기본적인 사용 방법이다. 조건식이 참일 때는 참에 해당하는 값을 반환하고, 거짓일때는 거짓에 해당하는 값을 반환한다.
만약에
상단의 예시에서 우리는 "a가 b보다 크다.", "b가 a보다 크다." 두 조건 말고도 다른 조건을 포함시키고 싶어졌다고 하자. 예를 들어 "a는 b와 같다."라는 조건을 추가하고 싶다고 할 때 if문을 사용할 수 있다.
int a = 10;
int b = 10;
if(a > b) {
System.out.println("a는 b보다 크다.");
} else if (a < b) {
System.out.println("b는 a보다 크다.");
} else {
System.out.println("a와 b는 같다.");
}
이와 같이 if문을 사용할 수도 있지만, 삼항연산자를 중첩해서 같은 결과가 나오도록 할 수도 있다.
삼항연산자 중첩 사용
(조건식) ? 참 : (조건식) ? 참 : 거짓
int a = 10;
int b = 10;
System.out.println((a > b) ? "a는 b보다 크다" : (a < b) ? "b는 a보다 크다" : "a와 b는 같다.");
삼항연산자를 중첩해서 사용하면 if문을 대체할 수 있다.
댓글