[Java] Part.2_연산자 우선순위

Haeun Noh·2022년 5월 20일
1

JAVA_programmers강의

목록 보기
8/12

0520


연산자 우선순위

순서대로 우선순위가 높다.

우선순위연산자설명결합 방향
1[ ]첨자 연산자왼쪽에서 오른쪽으로
.멤버 연산자왼쪽에서 오른쪽으로
2++후위 증가 연산자왼쪽에서 오른쪽으로
--후위 감소 연산자왼쪽에서 오른쪽으로
3!논리 NOT 연산자오른쪽에서 왼쪽으로
~비트 NOT 연산자오른쪽에서 왼쪽으로
+양의 부호 (단항 연산자)오른쪽에서 왼쪽으로
-음의 부호 (단항 연산자)오른쪽에서 왼쪽으로
++전위 증가 연산자오른쪽에서 왼쪽으로
--전위 감소 연산자오른쪽에서 왼쪽으로
(타입)타입 캐스트 연산자오른쪽에서 왼쪽으로
4*곱셈 연산자왼쪽에서 오른쪽으로
/나눗셈 연산자왼쪽에서 오른쪽으로
%나머지 연산자왼쪽에서 오른쪽으로
5+덧셈 연산자 (이항 연산자)왼쪽에서 오른쪽으로
-뺄셈 연산자 (이항 연산자)왼쪽에서 오른쪽으로
6<<비트 왼쪽 시프트 연산자왼쪽에서 오른쪽으로
>>부호 비트를 확장하면서 비트 오른쪽 시프트왼쪽에서 오른쪽으로
>>>부호 비트까지 모두 비트 오른쪽 시프트왼쪽에서 오른쪽으로
7<관계 연산자(보다 작은)왼쪽에서 오른쪽으로
<=관계 연산자(보다 작거나 같은)왼쪽에서 오른쪽으로
>관계 연산자(보다 큰)왼쪽에서 오른쪽으로
>=관계 연산자(보다 크거나 같은)왼쪽에서 오른쪽으로
instanceof인스턴스의 실제 타입 반환왼쪽에서 오른쪽으로
8==관계 연산자(와 같은)왼쪽에서 오른쪽으로
!=관계 연산자(와 같지 않은)왼쪽에서 오른쪽으로
9&비트 AND 연산자왼쪽에서 오른쪽으로
10^비트 XOR 연산자왼쪽에서 오른쪽으로
11l비트 OR 연산자 왼쪽에서 오른쪽으로
12&&논리 AND 연산자왼쪽에서 오른쪽으로
13ll논리 OR 연산자왼쪽에서 오른쪽으로
14? :삼항 조건 연산자오른쪽에서 왼쪽으로
15=대입 연산자 및 복합 대입 연산자(=, +=, -=, *=, /=, %=, <<=, >>=, >>>=, &=, ^=,=)

증감연산자

: 피연산자를 1씩 증가 혹은 감소시킬 때 사용하는 연산자

위치에 따라 전위와 후위로 나뉘고 실행값이 달라진다.

증감연산자설명
++n피연산자 값을 1 증가시킨 후 해당 연산 진행시킴
n++해당 연산 수행한 후 피연산자의 값을 1 증가시킴
--n피연산자의 값을 1 감소시킨 후 해당 연산 진행시킴
n--해당 연산 수행 후 피연산자의 값을 1 감소시킴

단항연산자

: 단 하나의 연산자로 연산이 되는 연산자

!, ~, +/-, ++, -- : 부정, bit변환 > 부호 > 증감

  • ++, -- 는 위치에 따라 전위와 후위로 나뉘고 실행값이 달라진다.

산술연산자 (arithmetic operator)

: 사칙연산을 다루는 기본적이면서도 가장 많이 사용되는 연산자

*, /, %, +, -, shift < 시프트연산자 ( >>, <<, >>> )

  • 비트 단위로 왼쪽이나 오른쪽으로 전체 비트를 이동한다.
  • 1의 보수를 만들 때 사용한다.

비교연산자 (relational operator)

: 피연산자 사이의 상대적인 크기를 판단하는 연산자

<, >, <=, >=, ==, !=

비트연산자 (bitwise operator)

: 논리 연산자와 비슷하지만, 비트(bit) 단위로 논리 연산을 할 때 사용하는 연산자

& (둘 다 참이면 참), | (둘 중 하나라도 참이면 참), ~ (반전)


논리연산자 (logical operator)

: 주어진 논리식을 판단하여, 참(true)과 거짓(false)을 결정하는 연산자

&&( 모두 참 ), ||( 하나 참 ), ! ( 거짓이 참 )

삼항연산자

: 자바에서 유일하게 피연산자를 세 개나 가지는 조건 연산자

( 조건식 ) ? : 반환값1 : 반환값2

대입연산자 (assignment operator)

: 변수에 값을 대입할 때 사용하는 이항 연산자

=(왼쪽 피연산자에 오른쪽 피연산자 대입), *=(곱한 후), /=(나눈 후), %=(나머지), +=(더한 후), -=(뺀 후)


profile
기록의 힘을 믿는 개발자, 노하은입니다!

0개의 댓글