Java는 특정 유형의 if-then-else 문을 대체하는 데 자주 사용되는 특수 삼항 연산자(삼항 연산자라고도 함)를 제공합니다. 조건 연산자의 기호는 "?:" 입니다. 이 연산자를 사용하는 경우 피연산자가 3개가 필요하므로 삼항 연산자라고 합니다. 조건 연산자 사용의 일반적인 구문 구조는 다음과 같습니다.
result=
여기서 표현식은 부울 표현식입니다. 표현식이 true이면 명령문1이 실행되고, 그렇지 않으면 명령문3이 실행됩니다. 이 삼항 연산자는 결과를 반환해야 하므로 간단한 이진 프로그램을 구현하려면 이 조건 연산자를 사용할 수 있습니다.
intx,y,z;
x=6,y=2;
z=x>y? 값, true이면 z 값은 x-y이고, 그렇지 않으면 z 값은 x+y입니다. 분명히 x>y 표현식은 true로 평가되므로 z 값은 4입니다.
팁: 조건 연산자는 if-else 문의 단순화된 형태로 이해될 수 있습니다. 간단한 표현식을 사용할 때 이 연산자를 사용하면 프로그램 코드가 단순화되고 프로그램을 더 읽기 쉽게 만들 수 있습니다.
조건 연산자를 사용할 때는 우선순위 문제에도 주의해야 합니다.
x>y? 연산자는 할당 연산자보다 우선합니다. 위의 문은 실제로 다음과 같습니다.
(x> y?x-=y:x)+=y;
그리고 연산자 "+="는 할당 연산자입니다. 이 연산자는 왼쪽 피연산자가 변수여야 하므로 오류가 발생합니다. 이러한 오류를 방지하려면 괄호 "0"을 사용하여 구분할 수 있습니다. 예를 들어, 다음은 올바른 표현입니다.
(x>y)?(x-=y):(x+=y);
예제 1
프로그램에서 x, y, z 세 개의 변수를 선언하고 사용자가 키보드에서 x 값을 입력합니다. , 그런 다음 조건 연산자를 사용하여 변수 y와 변수 z에 값을 할당합니다. 구현 코드는 다음과 같습니다.
publicclassTest9{
publicstaticvoidmain(String[]args){
intx,y,z;//3개의 변수 선언
System.out.print("숫자를 입력하세요:") ;
Scannerinput=newScanner(System.in);
x=input.nextInt();//사용자가 x
y=x>5? ",x);
System.out.printf("y=%dn",y);
System.out.printf("z=%dn",z );
}
}
인 이 프로그램은 먼저 x 값을 58로 입력한 다음 x 값이 5보다 큰지 확인합니다. 분명히 조건이 true이면 y 값은 x, 즉 y=58입니다. 그런 다음 y 값이 x보다 큰지 확인합니다. y 값과 x 값이 모두 58이므로 이 조건은 true가 아니므로 z=5입니다. x의 값을 다시 4로 입력하고, x의 값이 5보다 큰지 판단하고, 그렇지 않으면 y=-4로 판단하고, y의 값이 x보다 큰지 판단합니다. 가 참이 아니면 z=5입니다.
위 내용은 Java 삼항 연산자란 무엇이며 어떻게 사용하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!