삼항 연산자

삼항 연산자

조건식 ? 참일때의 값 : 거짓일 때의 값 ;

삼항 연산자는 통째로가 값이다. (자료형, 스캐너, ...)

참일때와 거짓일때의 값에 문장(print문)을 C언어에서는 가능하나, Java에서는 불가능하다.

Scanner sc = new Scanner(System.in); //변수 초기화 (정수:0, 실수:0.0, 0.0F, 문자:' ', 문자열:"", 논리형:false, 그 외:null) int num = 0; String result = ""; System.out.print("정수 : "); num = sc.nextInt(); //값은 같은 자료형으로 통일시켜주자 ! result = num>0 ? "양수입니다." : "음수입니다." ; System.out.println (num + "은(는) " + result);

여기서 0은 양수도 음수도 아닌데 결과값이 음수로 나온다.

result = num>0 ? "양수입니다." : "음수입니다."; result = num==0 ? "0입니다." : result;

result = num>0 ? "양수입니다." : num==0 ? "0입니다." : "음수입니다."

두 가지 다 결과값은 똑같다. 이렇게도 사용가능하나,

경우의 수가 단 두가지의 값으로 나올 경우에만 사용된다.

from http://guul.tistory.com/3 by ccl(S) rewrite - 2021-12-14 06:02:20