본문으로 건너뛰기
Advertisement

3.2 단항 연산자 (Unary Operator)

피연산자가 단 하나뿐인 연산자를 의미합니다. 부호 연산자와 증감 연산자 그리고 논리 부정 연산자가 있습니다.

1. 증감 연산자 (++, --)

가장 자주 사용되는 단항 연산자 중 하나로, 피연산자의 값을 1 증가시키거나 1 감소시킵니다. 주로 반복문에서 많이 사용됩니다.

  • 증가 연산자(++): 피연산자의 값을 1 증가시킵니다.
  • 감소 연산자(--): 피연산자의 값을 1 감소시킵니다.

전위형(Prefix)과 후위형(Postfix)

연산자가 피연산자의 앞에 위치하는지, 뒤에 위치하는지에 따라 식이 계산되는 시점이 달라집니다. (단독으로 사용될 때는 차이가 없습니다)

int i = 5, j = 0;
j = i++; // 후위형: i의 값(5)을 먼저 j에 대입한 후, i를 1 증가시킴
// 결과: i = 6, j = 5

int x = 5, y = 0;
y = ++x; // 전위형: x를 먼저 1 증가시킨 후, 그 값(6)을 y에 대입함
// 결과: x = 6, y = 6

2. 부호 연산자 (+, -)

수학에서의 부호와 같습니다. - 연산자는 피연산자의 부호를 반대로 변경한 결과를 반환합니다. + 연산자는 사실상 아무 일도 하지 않으므로 잘 사용하지 않습니다.

int i = -10;
i = -i; // i의 값을 반대로 바꾸어 +10이 됩니다.

참고: 부호 연산자는 boolean형과 char형을 제외한 기본형에만 사용할 수 있습니다.

3. 논리 부정 연산자 (!)

truefalse로, falsetrue로 바꿉니다. 단어 앞에 'NOT'을 붙이는 것과 의미가 동일합니다. boolean 형에만 사용할 수 있습니다.

boolean power = false;
System.out.println(!power); // true 출력

power = !power; // 값을 토글(toggle)할 때 활용

주로 조건문이나 제어문 등에서 조건식의 결과와 논리를 반대로 뒤집을 때 자주 사용됩니다.

Advertisement