연산자 우선순위
연산자 우선순위
앞서 더하기 빼기 같은 산술 연산자부터 다양한 연산자를 다루었습니다.
이런 많은 연산자를 다루다보면 어떤 것이 먼저 처리되는지 의문을 가질 수 있습니다.
예를들어 더하기와 곱하기가 섞여있을 때 무엇이 먼저 처리되는지 알아야 합니다.
연산자 (아래일수록 우선순위가 높음)
연산자 |
---|
clone new |
** |
++ -- (int) (float) (string) (array) (object) (bool) @ |
instanceof |
! |
* / % |
+ - . |
<< >> |
< <= > >= |
== != === !== <> <=> |
& |
^ |
| |
&& |
|| |
?? |
?: |
= += -= *= **= /= .= %= &= |= ^= <<= >>= ??= |
and |
xor |
or |
간단히 곱하기가 더하기보다 우선순위가 높기 때문에 2 * 3 + 2 는 (2 * 3) + 2 = 8 이 됩니다.
만약 더하기가 우선순위가 높았다면 2 * ( 3 + 2 ) = 10 이었겠죠.
우선순위를 마냥 외우지 마시고 괄호를 쳐서 계산의 순서를 명확히 하는 습관을 가지십시오.