728x90
부호 연산자
변수의 부호를 유지하거나 변경하는 연산자
연산식 | 설명 | |
+ | 피연산자 | 피연산자의 부호 유지 |
- | 피연산자 | 피연산자의 부호 변경 |
증감 연산자
변수의 값을 1 증가시키거나 1 감소시키는 연산자
연산식 | 설명 | |
++ | 피연산자 | 피연산자의 값을 1증가 |
-- | 피연산자 | 피연산자의 값을 1 감소 |
피연산자 | ++ | 다른 연산을 수행한 후에 피연산자의 값을 1 증가 |
피연산자 | -- | 다른 연산을 수행한 후에 피연산자의 값을 1 감소 |
단독으로 증감 연산자가 사용될 경우에는 변수의 앞뒤 어디에 붙어도 결과는 동일하다.
여러 개의 연산자가 포함되어 있는 연산식에서는 증감 연산자의 위치에 따라 결과가 달라진다.
int x = 1;
int y = 1;
int result1 = ++x + 10; // x를 1 증가 => 2 + 10
int result2 = y++ 10; // 1 + 10 => y를 1 증가
증감 연산자가 변수 앞에 있으면 우선 변수를 1증가 또는 1감소시킨 후 다른 연산을 수행한다.
증감 연산자가 변수 뒤에 있으면 모든 연산을 끝낸 후에 변수를 1증가 또는 1감소시킨다.
예제
package ch03.sec01;
public class IncreaseDecreaseOperatorExample {
public static void main(String[] args) {
int x = 10;
int y = 10;
int z;
x++; // x = 11
++x; // x = 12
System.out.println("x=" + x); // x = 12
y--; // y = 9
--y; // 7 =8
System.out.println("y=" + y); // y = 8
// 증감 연산자가 뒤에 있어 대입 먼저 되고 x++ 됨
z = x++;
System.out.println("z=" + z); // z = 12
System.out.println("x=" + x); // x = 13
z = ++x;
System.out.println("z=" + z); // z = 14
System.out.println("x=" + x); // x = 14
// y의 증감 연산자가 뒤에 있어 대입과 +연산 후 y++됨
z = ++x + y++;
System.out.println("z=" + z); // 15 + 8
System.out.println("x=" + x); // 15
System.out.println("y=" + y); // 9
}
}
728x90
'IT > Java' 카테고리의 다른 글
[Java] 오버플로우와 언더플로우 (0) | 2024.02.20 |
---|---|
[Java] 산술 연산자 (0) | 2024.02.20 |
[Java] println() / print() / printf() (0) | 2024.02.20 |
[Java] 문자열 기본 타입 변환 (0) | 2024.02.20 |
[Java] 연산식 자동 타입 변환 (0) | 2024.02.20 |