부호 / 증감 연산자

부호 연산자는 변수의 부호를 유지 하거나 변경 한다.

+ 피연산자 피연산자 부호 유지
- 피연산자 피연산자 부호 변경 변수 값의 부호를 변경 할 때 사용

정수 타입(byte, short, int) 연산의 결과는 int타입이다. 부호를 변경하는 것도 연산이므로 다음 과 같이 int타입으로 변수에 대입해줘야 한다.

byte b = 100;
byte result = -b; // 컴파일 에러

byte b = 100;
int result = -b; 

증감 연산자는 (++, --)는 변수의 값을 1 증감시키는 연산자

++ 피연산자 피연산자의 값을 1 증가 시킴
- - 피연산자 피연산자의 값을 1 감소 시킴
피연산자 ++ 다른 연산을 수행한 후에 피연산자의 값을 1증가 시킴
피연산자 - - 다른 연산을 수행한 후에 피연산자의 값을 1감소 시킴

변수 단독으로 증감 연산자가 사용 될 경우에는 변수의 앞뒤 어디에든 붙어도 결과는 동일하다.

int x = 5;
++x;
System.out.println(x); // 출력: 6

int x = 5;
x++;
System.out.println(x); // 출력: 6

int x = 5;
--x;
System.out.println(x); // 출력: 4

int x = 5;
x--;
System.out.println(x); // 출력: 4

하지만 여러 개의 연산자가 포함되어 있는 연산식에서는 증감 연산자의 위치에 따라 결과가 달라진다.

증감 연산자가 변수 앞에 있으면 우선 변수를 1 증감 후 다른 연산을 수행한다.

증감 연산자가 변수 뒤에 있으면 모든 연산을 끝낸 후에 변수 1 증감한다.

int x = 1;
int y = 1;
int result1 = ++x + 10; → x를 1증가 → int result1 = 2 + 10;  =  result1은 12저장 x값은 2
int result2 = y++ + 10; → int result2 = 1 + 10; → y를 1 증가 =  result2는 11저장 y값은 2

산술 연산자 (Arithmetic Operators)

산술 연산자는 숫자에 대해 더하기, 빼기, 곱하기, 나누기, 나머지 같은 수학 연산을 수행하는 연산자.

피연산자 + 피연산자 덧셈 연산 a + b
피연산자 - 피연산자 뺄셈 연산 a - b
피연산자 ***** 피연산자 곱셈 연산 a * b
피연산자 / 피연산자 나눗셈 연산 a / b
피연산자 % 피연산자 나머지 값 연산 a % b

정수끼리 나누면 정수 결과만 나온다.