728x90
# 연산자 (operator) 의 종류
구분 | 종류 | 우선순위 | 결합규칙 |
단항 연산자 | ++ -- + - ~ ! (type) | 높음 | ![]() |
산술 연산자 | * / % | ![]() |
|
+ - | ![]() |
||
<< >> | ![]() |
||
비교 연산자 | < > <= >= instanceof | ![]() |
|
== != | ![]() |
||
논리 연산자 | & | ![]() |
|
^ | ![]() |
||
| | ![]() |
||
&& | ![]() |
||
|| | ![]() |
||
삼항 연산자 | ?: | ![]() |
|
대입 연산자 | = += -= *= /= <<= >>= &= ^= |= | 낮음 | ![]() |
# 연산자 우선 순위의 예
사용 예 | 설 명 |
-x + 1 | x에 붙은 -가 +보다 먼저 연산된다. 단항 연산자 우선. |
x + 2 * 3 | +보다 *가 먼저 연산된다. 산술 연산자 중 * / % 우선. |
x + 4 > y - 5 | >보다 +, -가 먼저 연산된다. 산술 연산자 우선. |
x > 6 && y < 8 | &&보다 >, <가 먼저 연산된다. 비교 연산자 우선. |
result = x + 9; | 대입 연산자가 가장 마지막에 연산된다. 대입 연산자 우선순위 낮음. |
# 연산자 결합규칙의 예
x + y + z | 결합규칙이 왼쪽 먼저 진행된다. x + y 연산 후 + z 연산하는 순서 |
x = y = z | 결합규칙이 오른쪽 먼저 진행된다. y에 z대입 후 다시 x에 대입하는 순서 |
* 단항연산자와 대입연산자만 오른쪽 먼저 결합하고,
나머지 연산자들은 모두 왼쪽 먼저 결합한다.
728x90
'Lang > Java' 카테고리의 다른 글
[Java] 연산자에 대한 이해 (0) | 2022.12.05 |
---|---|
[Java] Java 입력 클래스 Scanner (0) | 2022.11.23 |
[Java] Java 출력 함수 printf() (0) | 2022.11.22 |
[Java] Java 변수 접두사 접미사 메모리사이즈 (0) | 2022.11.22 |