-
[Java] 증감 연산자언어/Java 2020. 12. 27. 17:59
증감 연산자는 변수의 값을 증가(++)나 감소(--) 하는 연산자입니다. 해당 연산자는 ++num이나 num++ 와 같이 사용되는데 차이는 아래와 같습니다.
연산자 설명 ++ (또는 --) 피연산자 다른 연산을 시작하기 전에 피연산자의 값을 증가 또는 감소 피연산자 ++ (또는 --) 다른 연산을 수행한 후에 피연산자의 값을 증가 또는 감소 연산식에서 증감 연산자만 사용하면 증감 연산자의 위치는 어디든 상관이 없습니다.
++i; i++; // 모두 i = i + 1;로 동일
하지만 다른 연산자와 함께 사용되면 위치에 따라 결과가 다르므로 주의해야 합니다.
var x = 1; var y = 1; var r = ++x + 10; var r1 = y++ + 10; // 12 // 11
위 연산 과정은 아래와 같습니다.
- ++x 실행 → x = 2 → x + 10 → r = 12
- y + 10 → r = 11 → y++ 실행 → y = 2
++i와 i = i + 1의 연산 속도 차이
- ++i와 i = i + 1을 컴파일 해서 생기는 바이트 코드를 비교하면 동일한 형태를 지니므로 연산 속도에 차이가 없습니다.