부호 연산자
| 연산식 | 설명 | |
| + | 피연산자 | 피연산자의 부호 유지 |
| - | 피연산자 | 피연산자의 부호 변경 |
+ 연산자는 잘 사용되지 않고, - 연산자는 변숫값의 부호를 변경할 때 사용된다. 주의할 점은 부호 변경 후의 타입이다. 다음 코드는 컴파일 에러가 발생한다.
byte b = 100;
byte result = -b; // 컴파일 에러. byte의 허용 범위에 음수값이 포함되지 않음
정수 타입 연산의 결과는 int 타입이다. 부호를 변경하는 것도 연산이므로 다음과 같이 int 타입 변수에 대입해야 한다.
byte b = 100;
int result = -b;
자바에서 + 연산자는 두 가지 기능을 가지고 있다. 피연산자가 모두 숫자일 경우에는 덧셈 연산을 수행하고, 피연산자 중 하나가 문자열일 경우에는 나머지 피연산자도 문자열로 자동 변화되어 문자열 결합 연산을 수행한다.
int value = 1 + 2 + 3; // 6
String str = "1" + 2 + 3; // "123"
String str = 1 + "2" + 3; // "123"
String str = 1 + 2 + "3"; // "33"
앞에서 순차적으로 + 연산을 수행하지 않고 특정 부분을 우선 연산하고 싶다면 해당 부분을 괄호()로 감싸면 된다. 괄호는 항상 최우선으로 연산을 수행한다.
String str = "1" + (2 + 3); // "15"
증감연산자
증감 연산자(++, --)는 변수의 값을 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 증가
위 코드에서 result1과 result2에는 각각 12와 11이 저장된다. 그리고 최종 x와 y의 값은 2가 된다.
'Language > JAVA' 카테고리의 다른 글
| [JAVA] 비교 연산자 (0) | 2024.09.03 |
|---|---|
| [JAVA] 산술 연산자 (1) | 2024.09.03 |
| [JAVA] print 메소드 (0) | 2024.09.03 |
| [JAVA] 자동 타입 변환과 강제 타입 변환 (0) | 2024.09.03 |
| [JAVA] 기본형 타입 (0) | 2024.09.03 |