문제
아래의 Java 코드를 수행한 결과로 옳은 것은?
Javapublic class Main { public static void main(String[] args) { int a = 17; int b = a % 2 == 0 ? a : 0; if (b < 17) { System.out.println("a"); } else { System.out.println("b"); } } }
① a ② b ③ 17 ④ 오류
정답
1번
해설
정답: 1. a는 17로 홀수이므로 b에는 0이 저장되고, b < 17 조건이 참이어서 a가 출력된다.
오답 풀이
- 1번: 실행 결과와 일치한다.
- 2번: else 블록은 실행되지 않는다.
- 3번: 숫자 17을 출력하는 코드가 아니다.
- 4번: 문법 오류가 발생하지 않는다.
보충 개념 삼항 연산자는 조건식 ? 참일 때 값 : 거짓일 때 값 형식으로 동작한다.