연산자 종류(우선순위 순서대로)
- .
- ++, - -, !,
- 강제 형 변환: (type) → 이때 boolean은 못 바꿈
- 산술: * / % - +
- 부호: - +
- 비교: ==, !=, >, <, =>, <=, instanceof
- 논리: &&, ||, 항1 ? 항2 : 항3
- 대입: =, +=, -=, *=, …
점 연산자(참조 연산자)
: 멤버 접근 연산자라고도 하는데, 객체 지향의 핵심인 객체 안에 있는 변수나 메서드에 접근할 때 사용
- 용도
- 객체의 멤버 접근: 객체가 가진 필드(변수)나 메서드를 호출할 때 - 예: myCar.speed, myCar.drive()
- 패키지 구분: 클래스가 속한 패키지 경로를 나타낼 때 - 예: java.util.Scanner
- 클래스 멤버 접근 (Static): 인스턴스를 만들지 않고 클래스 자체의 변수나 메서드를 쓸 때 - 예: Math.random()
- 주의사항: NullPointerException
- 만약 참조 변수가 null인데 . 을 찍어서 변수의 멤버에 접근하려 하면 NullPointerException 발생
- . 연산자를 쓸 때는 항상 앞의 변수가 null인지 체크하는 습관이 중요
instanceof 연산자
- 용도: 객체가 특정 클래스의 인스턴스인지, 아니면 그 클래스를 상속받은 자식 클래스의 인스턴스인지 확인
- 목표: 안전한 형변환을 위해
- 사용 형식: 객체명 instanceof 클래스명(예전)
→ 최신 방식 (Pattern Matching)
if (obj instanceof String s) { // 체크와 동시에 변수 생성 및 할당!
System.out.println(s.length());
}
논리 연산자
꿀팁: 앞의 조건의 결과에 따라 다음 조건 수행 여부가 결정!
- &&는 앞 조건이 틀리면 다음 조건 수행 없이 false
- ||는 앞 조건이 맞으면 다음 조건 수행 없이 true
자동 형 변환
- 정수 → 실수
- 작은 타입 → 큰 타입
'Java' 카테고리의 다른 글
| [Java] while문 / 분기 처리-break, continue (0) | 2026.03.18 |
|---|---|
| [Java] 제어문-if, switch / 반복문-for, while / 랜덤 함수 사용법 / final (4) | 2026.03.17 |
| [Java] 원시 타입과 참조 타입의 차이 / 데이터 타입 / 리터럴 (3) | 2026.03.16 |
| [Do it! 알고리즘 코딩 테스트 자바] 그리디 알고리즘, 소수 구하기, 유클리드 호제법, 그래프 [13~18일차] (1) | 2026.03.15 |
| [Do it! 알고리즘 코딩 테스트 자바] 이진 탐색 (12일차) (0) | 2026.03.08 |