[자바 라이브 스터디] 3주차 - 연산자1. 산술 연산자2. 비트 연산자3. 관계 연산자4. 논리 연산자5. instanceof6. assignment(=) operator7. 화살표(->) 연산자8. 3항 연산자9. 연산자 우선 순위10. Java 13. switch 연산자
[자바 라이브 스터디] 3주차 - 연산자
- 목표) 자바가 제공하는 다양한 연산자를 학습합니다.
1. 산술 연산자
- 정의)

- 특징)
/와%주의사항- 피연산자들이 정수형인 경우, 0으로 나누면
- ArithmeticException 예외 발생할 수 있음→ 예외 처리 필요함
- 피연산자들이 실수형인 경우, 0.0으로 나누면
/의 경우 Infinity%인 경우 NaN을 가짐
2. 비트 연산자
- 정의)


3. 관계 연산자
- 정의)

- 특징)
- 산술연산자처럼 연산 수행 전에 피연산자의 타입 일치시킴
- ex)
65 == 'A'은 trueA가 int 타입으로 변환되어65 == 65가 됨) - cf)
0.1f == 0.1은 false (0.1f는0.1000…1490…이라서) - 연산 결과 타입은 boolean
4. 논리 연산자
- 정의)

- 특징)
- 피연산자 타입은 boolean, 연산 결과 타입도 boolean
5. instanceof
- 정의) 객체 타입을 확인하는데 사용하는 연산자
- 예시)
6. assignment(=) operator
- 정의) 오른쪽 피연산자 값(리터럴, 변수, 다른 연산식)을 왼쪽 피연산자인 변수에 저장

7. 화살표(->) 연산자
- 정의) 람다 식을 도입하는 데 사용되는 연산자
- 8 버전부터 람다 표현식(lambda expression)이 적용되었음
- 예시)
8. 3항 연산자
- 정의) ? 앞의 조건식에 따라 콜론(:) 앞뒤의 피연산자가 선택됨
- 조건연산식이라고도 부름
- 예시)
조건식?값 또는 연산식(true 일 때) :값 또는 연산식(false 일 때)
9. 연산자 우선 순위
- 정의) 연산의 방향과 우선순위
- 단항, 이항, 삼항 연산자 순으로 우선순위 가짐
- 산술, 비교, 논리, 대입 연산자 순으로 우선순위 가짐
- 단항, 부호, 대입 연산자를 제외한 모든 연산의 방향은 왼쪽에서 오른쪽임
- 복잡한 연산식에는 괄호를 사용해 우선순위 정함
10. Java 13. switch 연산자
- 예시)

![[백기선 자바] 연산자](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F301eb74c-edaf-492f-9dca-9be8a3bbf75e%2F%25EC%25BA%25A1%25EC%25B2%2598.jpg?table=block&id=387fdd1c-bb18-4500-99b4-b0e9c1924d79&cache=v2)


![[3주차] 연산자](https://www.notion.so/image/https%3A%2F%2Foopy.lazyrockets.com%2Fapi%2Frest%2Fcdn%2Fimage%2F0f31d1c5-c0f4-4d41-9d24-d5c7ad21f966.jpeg%3Fd%3D16?table=block&id=c9e3a5e1-2f59-4809-be47-d1781c5dba2e&cache=v2)
![[3주차] 연산자](https://www.notion.so/image/https%3A%2F%2Foopy.lazyrockets.com%2Fapi%2Fv2%2Fnotion%2Fimage%3Fsrc%3Dhttps%253A%252F%252Fs3-us-west-2.amazonaws.com%252Fsecure.notion-static.com%252F4e2f4513-b94d-4dac-bec9-1ffeab79daa7%252FUntitled.png%26blockId%3D10a67b02-beb4-455f-ab79-4fd8107ce6ba%26width%3D2400?table=block&id=c9e3a5e1-2f59-4809-be47-d1781c5dba2e&cache=v2)