개발/JAVA

[JAVA] 연산자

mabb 2022. 5. 19. 09:59
반응형

 안녕하세요. 삶의 질을 높이고자 노력하는 영차영차입니다.
자바 기본기를 탄탄히 다지기 위한 공부 목적 포스팅입니다.
이것이자바다, HeadFirstJava 등의 교재와 구글링을 토대로 본인의 이해를 위해 작성하였으며
계속해서 살을 붙여나갈 계획입니다.
틀린 부분이 있을 경우 댓글 남겨주시면 감사하겠습니다.
---------------------------------------------------------------------------------------------------------

WHY
-데이터를 처리하여 결과를 산출하기 위하여 연산자가 필요함

연산자(operator): 연산에 사용되는 기호
피연산자(operand): 연산되는 데이터
연산식(expressions): 연산자와 피연산자로 이루어진 식

EX)
x + y
x - y
x // y
x % y
x == y
x < y
ㄴ 연산식 중 x,y 는 피연산자 , 기호는 연산자, 

 

모든 연산은 '하나의 값'으로 결과가 나온다.
->하나의 값을 넣을 수 있는 곳에 연산식 대입 가능

연산자의 종류 
증감 (++,--)
부호 (+,-)
부정 (!)
비트 (~)
산술 ( * , / , + , - )
쉬프트 ( << , >> , >>> ) // 비트 이동 연산자
비교 ( < , > , <= , >= , intstanceof , == , != )
논리 ( & , | , && , || )
비트논리연산자( & , | , ^ )
조건 ( ?: )  // 조건식 ? 값1 : 값2     조건식이 true이면 값1 조건식이 false이면 값2
대입( = , += , -= , *= , /= , %= , ^= , |= , <<= , >>= , >>>= )

피연산자의 수에 따라 
단항, 이항, 삼항

연산 우선순위
단항
산술 > 쉬프트 > 비교 > 논리
삼항(조건)
대입
-> ()괄호로 묶어서 우선순위를 정할 수 있다.

연산 시 주의사항
- 오버플로우 : 산출값이 정상 범위를 넘어가는 경우들.
- 정확한 계산은 정수를 이용
- Infinity 와 NaN 주의
- 부동소수점 연산시 NaN검사
-형변환, 자동형변환과 강제형변환

논리 연산자 & 과 &&의 차이
&&은 앞이 false이면 뒤의 피연산자는 실행하지 않음
&는 두 피연산자를 모두 판단함
||는 앞이 true이면 뒤의 피연산자는 실행하지 않음
|는 두 피연산자를 모두 판단함
-> 증감연산자가 뒤의 피연산자의 있을 경우 반영이 되지 않음.

반응형