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 )
비교( == , != )
논리 ( & )
논리 ( ^ )
논리 ( | )
논리 ( && )
논리 ( || )
조건 ( ? : )
대입 ( = , += , -= , *= , /= , %= , &= , ^= , |= , <<= , >>= , >>>= )

우선순위와 연산 방향이 정해져 있다 하더라도 혼란스러울수 있기 때문에 괄호 ( ) 를 사용해 먼저 처리해야할 연산식을 묶는 것이 좋다.