티스토리 뷰

Java/기본

017. 자바 : 연산자

따강아지 2022. 3. 6. 11:57

자바에서 연산자(Operator)는 산술 연산자, 증감 연산자, 비트 연산자, 시프트 연산자는 연산 결과에 대한 것이고, 비교 연산자, 논리 연산자는 연산 결과가 참/거짓을 대입 연산자, 삼항 연산자와 같은 대입에 관계 하는 것이 있습니다.


1. 자바 연산자

연산자 ( Operator ) 연산기호 기능 결과
산술 연산자(arithmetic operator) +, -, *, /, % 사칙연산, 나머지 연산
모두 두 개의 피연산자를 가지는 이항 연산자
결합 방향은 왼쪽에서 오른쪽
증감 연산자(increment and decrement operators) ++, -- 값이 1 씩 증가 및 감소
비트 연산자(bitwise operator) &. |, ~, ^ 비트 AND, OR, NOT, XOR
시프트 연산자(shift operator) >>, <<. >>> 비트 단위로 이동
비교 연산자(comparison operator) <, >, <=, >=, ==, != 값의 비교 /거짓
논리 연산자(logical operator) &&, ||, !, ^ 논리 AND, OR, NOT, XOR /거짓
대입 연산자(assignment operator) =, +=, -=, *=, /=, &=, |=, >>=, <<=, >>>= 산술연산 결과를 대입 ( 축약 ) 실행
삼항 연산자(ternary operator) (조건) ? 참실행 : 거짓실행 조건이 참이면 참실행, 거짓이면 거짓 실행 실행
instanceof 연산자 (instanceof operator) instanceof 객체가 어떤 클래스인지, 어떤 클래스를 상속받았는지 확인하는데 사용하는 연산자 /거짓

2. 연산자 우선 순위

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

 

'Java > 기본' 카테고리의 다른 글

019. 자바 : 산술연산자  (0) 2022.03.06
018. 자바 : 대입 연산자  (0) 2022.03.06
016. 자바 : 형변환  (0) 2022.03.01
015. 자바 : 변수 구분  (0) 2022.03.01
014. 자바 : 문자열 API  (0) 2022.03.01