매번 사용 방법을 잊어버려서 배운 김에 정리하려고 한다.
삼항 연산자 표현법은 아래와 같다.
[표현법]
조건식?조건식이 true일 경우 반환값:조건식이 false일 경우 반환값
간단한 연산자이므로 별도의 설명 없이 예를 보면 빠르게 이해된다.
Scanner scanner = new Scanner(System.in);
System.out.print("정수값 입력 : ");
int num = scanner.nextInt(); //사용자로부터 임의의 정수를 입력 받음
String str = (num > 0 ? "양수이다" : "양수가 아니다");
System.out.println(num + " : " + str);
String str = (num > 0 ? "양수이다" : "양수가 아니다");
이대로 끝내긴 아쉬우므로 삼항연산자를 중첩해서 사용해보자. 바로 코드를 보자
// 사용자가 입력한 정수값이 양수인지, 음수인지, 0인지 정확하게 판별 후 출력
Scanner scanner = new Scanner(System.in);
System.out.print("정수값 입력 : ");
int num = scanner.nextInt();
// num > 0을 연산해야지 ? 뒤의 내용과 : 뒤의 내용을 연산할 수 있다. ()가 있다고 먼저 연산하는 것 아님!
String result = num > 0 ? "입력한 값은 양수이다" : (num == 0 ? "입력한 값은 0이다" : "입력한 값은 음수이다");
System.out.println(result);
String result = num > 0 ? "입력한 값은 양수이다" : (num == 0 ? "입력한 값은 0이다" : "입력한 값은 음수이다"); (num == 0 ? "입력한 값은 0이다" : "입력한 값은 음수이다")를 실행. (num == 0 ? "입력한 값은 0이다" : "입력한 값은 음수이다")