JAVA LV 2-6

그 외의 연산자

Posted by Gihoon on March 14, 2023

조건 연산자 ?:

조건연산자는 조건신, 식1, 식2 모두 세개의 피연산자를 필요로 하는 삼항 연산자 이며, 삼항 연산자는 조건 연산자 하나 뿐이다.
조건 연산자는 첫 번째 피연산자인 조건식의 평과 결과에 따라 다른 결과를 반환한다. 조건식의 평가결과가 true 이면 식 1이 , false이면 식 2가 연산결과가 된다.
result = (x > y) ? x : y ;
위의 문장에서 x>y의 결과가 true이면 result에는 x의 값이 저장된다.
조건 연산자는 조건문인 if문으로 바꿔 쓸수 있으며, if문 대신 조건 연산자를 사용하면 코드를 보다 간단히 할 수 있다.

대입 연산자 = op=

대입 연산자는 변수와 같은 저장공간에 값 또는 수식의 연산결과를 저장하는데 사용된다.
이 연산자는 오른 쪽 피연산자의 값(식이라면 평가값)을 왼쪽 피연산자에 저장한다. 그리고 저장된 값을 연산결과로 반환한다.
대입 연산자는 연산자들중에서 가장 낮은 우선순위를 가지고 있기 때문에 식에서 가장 나중에 수행된다. 또한 진행 방향이 오른쪽에서 왼쪽이기 때문에
x=y=3에서 y=3이 계산되고 x=y가 수행된다.
lvalue와 rvalue 대입 연산자의 왼쪽 피연산자를 lvalue라 하고 오른쪽 피연산자를 rvalue라고 한다.
대입연산자의 rvalueㅇ는 변수뿐만아니라 식이나 상수등이 모두 가능하지만 lvalue는 반드시 변수처럼 값을 변경할 수 있는 것이어야 한다. 따라서 리터럴이나 상수는 lvalue가 될 수 없다.

복합 대입 연산자

대입 연산자는 다른 연산자(op)와 결합하여 ‘op=’와 같은 방식으로 사용될 수 있다. 예를 들면, ‘i= i + 3’은 ‘i += 3’ 과 같이 표현 할 수 있다. 이때 결합된 두 연산자는 반드시 공백없이 붙여 써야 된다.