이 섹션에서는 다음 내용을 학습합니다. 운영자 자바의 우선순위 예시와 함께.
연산자 우선순위란 무엇입니까?
그만큼 연산자 우선순위 두 표현식이 어떻게 결합되는지를 나타냅니다. 표현식에서는 피연산자와 연산자의 그룹화를 결정하고 표현식이 평가되는 방법을 결정합니다.
파이썬 chr 함수
표현식을 풀 때 염두에 두어야 할 두 가지 사항 중 첫 번째는 상위 그리고 두 번째는 연관성 .
상위
우선순위는 피연산자와 함께 다양한 유형의 연산자를 그룹화할 때 우선순위입니다. 표현식에 우선 순위가 높거나 낮은 연산자가 두 개 이상 있는 경우에만 의미가 있습니다. 우선순위가 높은 연산자가 먼저 평가됩니다. 우선순위가 낮은 연산자를 먼저 평가하려면 괄호를 사용하여 피연산자를 그룹화한 다음 평가해야 합니다.
연관성
표현식에 동일한 우선순위의 연산자가 두 개 이상 있으면 연관성을 따라야 합니다. 이러한 경우 표현식은 다음 중 하나로 해결될 수 있습니다. 왼쪽에서 오른쪽으로 또는 오른쪽에서 왼쪽으로, 따라서.
Java 연산자 우선순위 테이블
다음 표에서는 Java에서 사용되는 연산자의 우선순위와 연관성을 설명합니다.
상위 | 운영자 | 유형 | 연관성 |
---|---|---|---|
열 다섯 | () [] · | 괄호 배열 첨자 회원 선정 | 왼쪽에서 오른쪽으로 |
14 | ++ -- | 단항 후증가 단항 후감소 | 오른쪽에서 왼쪽으로 |
13 | ++ -- + - ! ~ (유형) | 단항 사전 증가 단항 사전 감소 단항 플러스 단항 마이너스 단항 논리 부정 단항 비트 보수 단항 유형 캐스트 | 오른쪽에서 왼쪽으로 |
12 | * / % | 곱셈 분할 계수 | 왼쪽에서 오른쪽으로 |
열하나 | + - | 덧셈 빼기 | 왼쪽에서 오른쪽으로 |
10 | << >> >>> | 비트 왼쪽 시프트 부호 확장을 사용한 비트 단위 오른쪽 시프트 확장이 0인 비트 단위 오른쪽 시프트 | 왼쪽에서 오른쪽으로 |
9 | < <= > >= 대신에=> | 관계형 미만 관계형 작거나 같음 다음보다 큰 관계형 보다 크거나 같음 관계형 유형 비교(객체만 해당) | 왼쪽에서 오른쪽으로 |
8 | == != | 관계형은 다음과 같습니다. 관계형이 다음과 같지 않음 | 왼쪽에서 오른쪽으로 |
7 | & | 비트별 AND | 왼쪽에서 오른쪽으로 |
6 | ^ | 비트별 배타적 OR | 왼쪽에서 오른쪽으로 |
5 | | | 비트 단위 포함 OR | 왼쪽에서 오른쪽으로 |
4 | && | 논리 AND | 왼쪽에서 오른쪽으로 |
삼 | || | 논리적 OR | 왼쪽에서 오른쪽으로 |
2 | ? : | 삼항 조건부 | 오른쪽에서 왼쪽으로 |
1 | = += -= *= /= %= | 과제 추가 과제 빼기 할당 곱셈 할당 부서 배정 모듈러스 할당 | 오른쪽에서 왼쪽으로 |
참고: 숫자가 클수록 우선순위가 높아집니다.
Java 연산자 우선 순위 예
예를 통해 연산자 우선순위를 이해해 봅시다. 다음 표현을 보고 답을 추측해 보세요.
1 + 5 * 3
당신은 대답이 될 것이라고 생각할 수도 있습니다 18 하지만 그렇지 않습니다. 곱하기(*) 연산자가 더하기(+) 연산자보다 우선순위가 높기 때문입니다. 따라서 표현식은 먼저 5*3을 평가한 다음 나머지 표현식, 즉 1+15를 평가합니다. 따라서 대답은 다음과 같습니다. 16 .
또 다른 예를 살펴보겠습니다. 다음 표현을 고려해보세요.
2차원 배열을 위한 C 프로그램
x + y * z / k
위 식에서는 우선순위 때문에 * 및 / 연산이 +보다 먼저 수행됩니다. 연관성 때문에 y를 k로 나누기 전에 y에 z를 곱합니다.