<Do it 자바 완전 정복> 3장 연산자

hyming·2022년 3월 17일
0

JAVA STUDY 📚

목록 보기
4/4
post-thumbnail

증감 연산자

  • 종류 : ++, --

  • 전위형 ++a / --a
    값 변경 후 내용 진행

  • 후위형 a++ / a--
    내용 진행 후 값 변경

산술 연산자

  • 종류 : +, -, *, /, %
  • 나누기 연산자 : int / int => result = int
  • 나머지 연산자 a % b

논리 연산자

  • 종류 : &&(AND), ||(OR), ^(XOR), !(NOT)

  • 피연산자, 결과 : true or false

  • !a

a!
truefalse
falsetrue
  • a && b , a || b , a ^ b
ab&&||^
truetruetruetruefalse
truefalsefalsetruetrue
falsetruefalsetruetrue
falsefalsefalsefalsefalse
  • 쇼트 서킷
    첫번째 피연산자로 결과가 도출 가능하여 연산 생략되는 상태
    OXR은 두 피연산자를 모두 확인해야 함으로 쇼트 서킷이 발생하지 않음
true || (a > b)		//앞 피연산자(true)에서 결과가 도출됨으로
					//뒤 피연산자(a > b)는 계산하지 않음
true || ++a			//쇼트 서킷으로 뒤 피연산자의 연산이 생략
 					//++ 연산이 실행 되지 않음
                    //필요에 의도적으로 순서 적용 해야함

비트 연산자

  • 종류 : &(AND), |(OR), ^(XOR), ~(NOT)

  • 결과 : 0 or 1

  • ~a

a~
01
10
  • a & b , a | b , a ^ b
ab&|^
00000
01011
10011
11110
5 & 3	// (101) & (011) -> (001) => 1                    
5 | 3	// (101) | (011) -> (111) => 7
5 ^ 3	// (101) ^ (011) -> (110) => 6
~5		// ~(00..010) -> (11..101) => -3

비교 연산자

  • 종류 : 크기 비교, 등가 비교

  • 결과 = true or false

  • 크기 비교 : <, <=, >, >=
  • 등가 비교 : ==, !=

시프트 연산자

  • 종류 : <<, >>, >>>

  • a << 값 : 왼쪽으로 비트 이동, 비트 당 *2

  • a >> 값 : 오른쪽으로 비트 이동, 비트 당 1/2

  • a >>> 값 : 부호비트 포함 오른쪽으로 비트 이동, 특정 자리의 상태 확인용

int a = 5	//0000 0101
System.out.print( a >>> 3 & 1 ) 	// result = 0
// 시프트 연산 후 1과 비트 연산을 통행 특정 자리의 값 확인

대입 연산자

  • 종류 : =, +=, >>=, &=...

  • 산술, 시프트, 비트 연산자를 이용한 축약 가능

삼항 연산자

  • 조건 ? true일때 값 : false일때 값

우선순위

1. 단항
++, --, !, ~

2. 산술
( *, /, % ) > ( +, - )

3. 시프트
<<, >>, >>>

4. 비교
( <, <=, >, >= ) > ( ==, != )

5. 비트
& > ^ > |

6. 논리
&& > ||

7. 삼항
? :

8. 대입
=, +=, >>=, &=...



출처 : Do it! 자바 완전정복 3장

0개의 댓글

관련 채용 정보