본문 바로가기
Programming/JAVA

[JAVA] 연산자(자바)

by HoonSikE 2022. 2. 18.
반응형
SMALL
연산자(Operator)란?
어떤 기능을 수행하는 기호 (+, -, *, / 등등)

연산자의 종류,  우선순위, 결합방향
연산자 유형 연산자 결합방향 우선순위
괄호 ()   높음
단항 연산자 ++   --   +(부호)   -(부호)   ~   !   (type) : 형 변환
산술 연산자
*사칙연산 및 나머지 계산
*   /   %
+(덧셈)   -(뺄셈)
비트 이동 연산자 <<   >>   >>>
관계 연산자
* 비교 및 등가
<   >   <=   >=   instanceof
==   !=
비트 논리 연산자 &   ^   |
논리 연산자 &&   ||
조건 연산자 ? :
대입연산자
* 대입, 축양형대입
=   *=   /=   %=   +=   -=
<<=   >>=   >>>=
&=   ^=   |=
낮음
 - 순서가 헷갈린다면 우선순위가 가장 높은 괄호를 적절히 사용해주는 것이 가독성도 높일 수 있고 오류를 방지할 수 있다.
 - 산술 이항 연산자는 연산 전에 피 연산자의 타입을 일치시킨다.
   * 피연산자의 크기가 4byte(int 형)미만이면 int로 자동 형 변환 후 연산 진행
     ex) byte, char는 결과가 자동으로 int형으로 변환
   * 피연산자 중 큰 타입으로 형 변환 후 연산 진행
     ex) float형 + double 형 계산을 하면 double형으로 변환

단항연산자
연산자 연산자 기능 예시
++  전치 : 연산 후 사용 ++a
 후치 : 사용 후 연산  a++
--  전치 : 연산 후 사용 --a
 후치 : 사용 후 연산  a--
+  + 부호 +a
-  - 부호 -a

산술연산자 (사칙연산)
연산자 연산자 기능 예시
*  곱셈 a * b
/  나눗셈 후 몫 a / b
%  나눗셈 후 나머지 a % b
+  덧셈 a + b
-  뺼셈 a - b

비트 이동 연산자
연산자 연산자 기능 예시
<<  앞의 피 연산자 비트 열을 뒤 피 연산자 만큼 왼쪽으로 이동하고
 이동에 따른 빈 공간은 0으로 채운다. 
a << 2
* a << 1 = a*2
>>  앞의 피 연산자 비트 열을 뒤 피 연산자 만큼 오른쪽으로 이동하고
 이동에 따른 빈 공간은 음수 1, 양수는 0으로 채운다.
a >> 2
>>>  앞의 피 연산자 비트 열을 뒤 피 연산자 만큼 오른쪽으로 이동하고
 이동에 따른 빈 공간은 0으로 채운다.
a >>> 2
* a >>> 1 = a/2
a*2와 a/2보다 a <<1와 a>>>1의 속도가 더 높다.

관계 연산자
연산자 연산자 기능 예시
<  앞의 피연산자가 뒤의 피 연산자보다 작으면 true, 크면 false a < b
>  앞의 피연산자가 뒤의 피 연산자보다 크면 true, 작으면 false a > b
<=  앞의 피연산자가 뒤의 피 연산자보다 작거나 같으면 true, 크면 false a <= b
>=  앞의 피연산자가 뒤의 피 연산자보다 크거나 같으면 true, 작으면 false a >= b
==  앞의 피연산자와 뒤의 피 연산자가 같으면 true, 다르면 false a == b
!=  앞의 피연산자와 뒤의 피 연산자가 다르면 true, 같으면 false a != b

비트 논리 연산자
연산자 연산자 기능 예시
&  두 피 연산자의 비트 값이 모두 1인 경우만 1, 나머지는 0 a & b
^  두 피 연산자의 비트 값이 서로 다르면 1, 같으면 0 (Exclusive-OR) a ^ b
|  두 피 연산자의 비트 값이 모두 9인 경우만 9, 나머지는 1 a | b
~  피 연산자의 모든 비트를 반전시킴 (1의 보수) ~a

논리 연산자
연산자 연산자 기능 예시
&  두 개의 피연산자가 모두 true인 경우 true a > 0 & b > 0
|  두 개의 피 연산자가 하나라도 true이면 true a > 0 | b < 0
!  단항 연산자로 피 연산자와 같이 false이면 true, true이면 false로 변경 (toggle) !a
^  두 피 연산자가 서로 다를 경우만 true, 같으면 false true & false -> false
true ^ true -> false
&&  &와 동일한 의미이나 앞의 피 연산자가 false이면 뒤의 피 연산자를 검사하지 않는다. a > 0 && b > 0
||  |와 동일한 의미이나 앞의 피 연산자가 true이면 뒤의 피 연산자를 검사하지 않는다. a > 0 || b < 0

조건 연산자
연산자 연산자 기능 예시
? :  간단한 if 문
 조건식 ? 참일때 : 거짓일때
a = (a>b) ? a : b;

대입 연산자
연산자 연산자 기능 예시
=  앞의 피 연산자에 뒤의 피연산자 값을 대입 a = b
*=   /=   %=   +=   -=
 앞의 피 연산자에
 앞의 피연산자,  등호(=)앞의 연산자, 뒤의 피 연산자
 계산을 한 값을 대입
a *= b
-> a = a * b (동일)
<<=   >>=   >>>=
&=   ^=   |=

JAVA List
 

JAVA List

Start Java!!! ● 1 ● 2   기회는 준비된 자에게 찾아온다.

han-hoon.tistory.com


  

기회는 준비된 자에게 찾아온다.

 


 

반응형
LIST

'Programming > JAVA' 카테고리의 다른 글

[JAVA] 반복문 for과 while(자바)  (0) 2022.02.19
[JAVA] 조건문 if와 while (자바)  (0) 2022.02.19
[JAVA] 랜덤(Random) 수 구현(자바)  (0) 2022.02.19
[JAVA] 변수(자바)  (0) 2022.02.18
[JAVA] JAVA의 특징(자바)  (0) 2022.02.18

댓글