본문 바로가기
기록하는 중/JAVA

[Java] 연산자

by 성장하는 요롱이 2023. 11. 19.

 

 

 단항 연산자

 

  - 부호 연산자 : +, - 

  - 증감 연산자 : ++, --

  - 후위 연산자 : 변수++, 변수--, 변수 뒤에 사용되면 선 처리 후 증가/감소함

  - 전위 연산자 : ++변수, --변수, 변수 앞에 사용되면 선 증가/감소 후 나머지를 처리함

 

 단항 연산자 종류
 논리 부정 연산자 : !  비트 반전 연산자 : ~
 - Boolean type에서만 사용가능
 - true 면 false 산출
 - false 면 true 산출
 - byte, short, int, long 타입만 피연산자 가능
 - 비트 값을 반전   1 → 0 , 0 → 1
 - 산출 타입은 int 타입

 

 이항 연산자

 

 - 피연산자가 2개인 연산자

 - boolean 타입을 제외한 모든 기본 연산자에 사용가능

 - 정수 타입과 long 타입이 만나면 결과는 long 타입

 - 실수 타입 만나면 실수 타입

 - 정수 % 0 : ArithmeticException 발생

 - 정수 / 0 : ArithmeticException 발생

 

 

 대입 연산자

 

  -  a = b 일 때 a ← b 로 변수 저장

  -  모든 연산자들 중 가장 낮은 연산 순위는 제일 마지막에 수행

 

 대입 연산자의 종류

   

  - 단순 대입 연산자 

  - 복합 대입 연산자 : 정해진 연산을 수행 한 후 결과를 변수에 저장

대입 연산자 내용
a = b b의 값을 a 에 대입
a += b a = a  + b와 동일 
a -= b a = a  - b와 동일
a *= b a = a  * b와 동일
a /= b a = a  / b와 동일
a %= b a = a  % b와 동일
a &=  b a = a  & b와 동일
a ^= b a = a  ^ b와 동일
a |= b a = a  | b와 동일
a <<= b a = a  << b와 동일
a >>= b a = a  >> b와 동일
a >>>= b a = a  >>> b와 동일

 

 비교 연산자

 

연산자 내용
a < b  a가 b보다 작으면 true
a > b  a가 b보다 크면 true
a <= b  a가 b보다 작거나 같으면 true
a >= b  a가 b보다 크거나 같으면 true
a == b  a가 b와 같으면 true
a != b  a가 b와 같지 않으면 true

※  흐름 제어문인 if문, for문, while문에서 실행 흐름을 제어 할 때 사용

※  문자열을 비교 할 때는 equals(), !equals() 사용

 

 

 논리 연산자

 

구분 연산식 설명
AND(논리곱)  && 또는 &  피연산자가 모두 true 일 경우에만 연산결과는 true
OR(논리합)  || 또는 |  피연산자 중 하나만 true 이면 연산 결과는 true
XOR(배타적 논리합)  ^  피연산자가 하나는 true이고 다른 하나는 false일 경우에만 연산결과 true

 

 

 비트 연산자

 

  - 비트 단위로 연산하므로 0과 1이 피연산자

 

  - 비트 논리 연산자

연산자 별칭 내용
a & b AND 연산  두 비트 모두 1이면 1, 그렇지 않으면 0
a | b OR 연산  두 비트 모두 0이면 0, 그렇지 않으면 1
a ^ b XOR 연산  두 비트가 다르면 1, 같으면 0
~ a NOT 연산  1을 0으로, 0을 1로 변환

 

  - 비트 이동 연산자

시프트 연산자 내용
a >> b  a의 각 비트를 오른쪽으로 b번 시프트한다.
 최상위 비트의 빈자리는 시프트 전의 최상위 비트로 다시 채운다.
 산술적 오른쪽 시프트라고 한다.
a >>> b  a의 각 비트를 오른쪽으로 b번 시프트 한다.
 최상위 비트의 빈자리는 항상 0으로 채운다.
 논리적 오른쪽 시프트라고 한다.
a << b  a의 각 비트를 왼쪽으로 b번 시프트 한다.
 최하위 비트의 빈자리는 항상 0으로 채운다.
 산술적 왼쪽 시프트라고 한다.

 

 

 삼항 연산자

 

  - 세개의 피연산자를 필요로 하는 연산자 (조건 연산자)'

  조건식 ? 값 또는 연산식(조건식이 true 일 때 실행) : 값 또는 연산식(조건식이 false일 때 실행) 

 

 

 

 

 

'기록하는 중 > JAVA' 카테고리의 다른 글

[Java] 반복문 - for , while, do ~ while, continue, return  (0) 2023.11.21
[Java] switch ~ case, break  (0) 2023.11.21
[Java] 조건문 - if  (0) 2023.11.21
[Java] 변수  (0) 2023.11.19
자바 설치  (0) 2023.11.08