자바 연산자 우선순위 예제

답변 : 각각 3abc 및 abc12. + 연산자는 문자열 연결 또는 추가 여부에 관계없이 연관상태로 남아 있습니다. 나는 자바 사양을 보고 그들이 연산자 우선 순위를 정의했는지 확인하고 있었습니다 .&| 결정적 컴파일 및 결정적 실행을 가정하더라도 예제를 컴파일/실행하는 것만이 특정 예제가 특정 동작을 나타낸다는 것을 증명합니다. 스펙에 대한 참조가 없으면 컴파일러는 블랙 박스일 뿐이므로 한 예제에서 다른 예제로 논리적으로 일반화할 수 없습니다. (다음 예제는 완전히 직관적이지 않은 방식으로 처리되는 예제일 수 있습니다.) 예제를 작성/실행하기만 하면 프로그래밍 언어에 유용한 것을 증명할 수 없습니다. 알고 있는 모든 경우 비논리적이거나 일관되지 않거나 결정적이지 않은 방식으로 코드를 컴파일하기 위해 컴파일러가 구현될 수 있습니다. 변수를 선언하고 초기화하는 방법을 배웠으므로 변수를 사용하여 작업을 수행하는 방법을 알고 싶을 것입니다. Java 프로그래밍 언어의 연산자 학습은 시작하기에 좋은 장소입니다. 연산자는 하나, 두 개 또는 세 개의 나연산자에서 특정 작업을 수행한 다음 결과를 반환하는 특수 기호입니다. 나도 이 같은 질문을 했지만 대답은 실질적으로 나에게 주었다. 다음은 동일한 우선 순위의 연산자가 동일한 식에 나타나면 먼저 평가되는 규칙을 준수해야 합니다. 할당 연산자제외의 모든 이진 연산자는 왼쪽에서 오른쪽으로 평가됩니다.

할당 연산자는 오른쪽에서 왼쪽으로 평가됩니다. 따라서이 예제를 사용하면 Java의 후드 아래에 논리및 논리적 우선 순위가 ||보다 높다는 것을 쉽게 알 수 있습니다. 둘 다 좌표로 정의되며 연산자 우선 순위가 정의되지 않습니다. 연산자가 나타나는 테이블의 맨 위에 가까울수록 우선 순위가 높아지다. Java에는 식에 여러 연산자가 있을 때 식의 연산자가 평가되는 순서를 지정하기 위한 잘 정의된 규칙이 있습니다. 예를 들어 곱셈과 분할은 덧셈과 뺄셈보다 우선 순위가 높습니다. 우선 순위 규칙은 명시적 괄호로 재정의할 수 있습니다. Java 언어 사양에는 명시적 연산자 우선 순위 표가 없습니다. 웹과 교과서의 다른 테이블은 몇 가지 사소한 방법으로 동의하지 않습니다. 연산자 우선 순위는 무엇입니까? 식 평가에 어떤 영향을 미합니까? 여기서 우선 순위가 가장 높은 연산자는 테이블 의 맨 위에 나타나고 가장 낮은 연산자는 맨 아래에 나타납니다. 식 내에서 우선 순위가 높은 연산자가 먼저 평가됩니다. 이진 연산에서 평가 순서는 왼쪽에서 오른쪽으로 입니다(할당 제외, 오른쪽에서 왼쪽으로 평가).

기술적으로 구분자, [], () 및 . (점 연산자)는 또한 연산자처럼 작동 할 수 있습니다. 이 플레이에서 가장 높은 우선 순위를 갖게 됩니다. 또한 화살표 연산자(->)를 확인합니다. JDK 8에 의해 추가되었으며 람다 식에 사용됩니다. 범용 프로그래밍에서 특정 연산자는 다른 연산자보다 더 자주 나타나는 경향이 있습니다. 예를 들어 할당 연산자 “=”는 서명되지 않은 오른쪽 시프트 연산자 “>>”보다 훨씬 일반적입니다.