JAVA 증감 연산자 (전치, 후치)

증감 연산자

증감연산자는 ++, -- 두 가지이며,
피연산자의 앞 또는 뒤에 붙어 값을 1 증가시키거나 1 감소시킨다.

  • 연산자가 변수의 앞에 붙을 때 전위 연산자라고 부르고, 뒤에 붙을 때 후위 연산자라고 부른다.
int a = 2;

//1. 전위 연산자
b = ++a;	// 3

//2. 후위 연산자
c = a++;  	// c = 3, a = 4
  • a++ 연산은 증가 전의 값인 3을 c에 반환한 후 1이 증가하는 방식이다.

연산자 우선순위 및 연산 방향

출처 : 자바의 정석

예제 : 다음 문장을 수행한 후 z의 값은?

int x = 2, y = 10, z = 0;
z = x++*2+--y-5+x*(y%2);

연산자 우선순위와 연산 방향을 고려한 풀이는 다음과 같다.

//1
z = x++;   // z = 2, x = 3
z *= 2;    // z = 4
z += --y;  // z = 13, y = 9
z -= 5;    // z = 8
z += x;    // z = 11
z *= (y%2) // z = 11, (y%2) = 1

처음에는 연산 방향을 고려하지 않고 우리가 평소 수학 과목을 공부할 때처럼 계산을 해서 애를 먹었다. 앞으로 증감연산자가 포함된 연산식에서는 특히 연산 방향에 대한 고려가 필요하겠다.

좋은 웹페이지 즐겨찾기