JAVA
[JAVA] 연산자
unboxing
2020. 11. 30. 19:39
연산자
프로그램에서 데이터를 처리하여 결과를 산출하는 연산이 사용되는 표시나 기호
-
연산되는 데이터는 피연산자라고 한다.
-
여난자와 피연산자를 이용하여 연산의 과정을 기술한 것을 연산식 이라고 한다.
-
자바 언어에서는 다양한 연산자를 제공하고 있다.
-
자바에서 산출되는 값의 타입은 연산자별로 다르다.
자바에서 제공하는 다양한 연산자
연산자 종류 | 연산자 | 피연산자 수 | 산출값 | 기능 설명 |
산술 | + , - , * , / , % | 이항 | 숫자 | 사칙연산 및 나머지 계산 |
부호 | + , - | 단항 | 숫자 | 음수와 양수의 부호 |
문자열 | + | 이항 | 문자열 | 두 문자열을 연결 |
대입 | = , += , -= , *= , /= , %= , &= , ^= , |= , <<= , >>= , >>>= |
이항 | 다양 | 우변의 값을 좌변의 변수에 대입 |
증감 | ++ , -- | 단항 | 숫자 | 1만큼 증가/감소 |
비교 | == , != , > , < , >= , <= , instanceof | 이항 | boolean | 값의 비교 |
논리 | ! , & , | , && , || | 단항 이항 |
boolean | 논리적 NOT, AND, OR 연산 |
조건 | (조건식)? A : B | 삼항 | 다양 | 조건식에 따라 A 또는 B 하나를 선택 |
비트 | ~ , & , | , ^ | 단항 이항 |
숫자 boolean |
비트 NOT, AND, OR, XOR 연산 |
쉬프트 | >> , << , >>> | 이항 | 숫자 | 비트를 좌측/우측으로 밀어서 이동 |
연산자의 방향 우선순위
연산자 | 연산 방향 | 우선순위 |
증감( ++ , -- ), 부호( + , - ), 비트( ~ ), 논리( ! ) | ![]() |
우선순위 높음 우선순위 낮음 |
산술( * , / , % ) | ![]() |
|
산술( + , - ) | ![]() |
|
쉬프트( << , >> , >>> ) | ![]() |
|
비교( < , > , <= , >= , instanceof ) | ![]() |
|
비교( == , != ) | ![]() |
|
논리 ( & ) | ![]() |
|
논리 ( ^ ) | ![]() |
|
논리 ( | ) | ![]() |
|
논리 ( && ) | ![]() |
|
논리 ( || ) | ![]() |
|
조건 ( ? : ) | ![]() |
|
대입 ( = , += , -= , *= , /= , %= , &= , ^= , |= , <<= , >>= , >>>= ) | ![]() |
우선순위와 연산 방향이 정해져 있다 하더라도 혼란스러울수 있기 때문에 괄호 ( ) 를 사용해 먼저 처리해야할 연산식을 묶는 것이 좋다.