📌 enum 정의하는 방법
열거형(enum)이란
- 관련된 상수들을 같이 묶어 놓은 것.
- == 사용 시 Java는 열거형의 값과 타입을 모두 체크함
열거형 정의 방법
// enum 열거형이름{ 상수명1, 상수명2, ... }
enum Direction { EAST, SOUTH, WEST, NORTH }
class Unit {
Direction dir; // 열거형을 인스턴스 변수(iv)로 선언
void init(){
dir = Direction.EAST;
}
}
📌enum이 제공하는 메소드 (values()와 valueOf())
- values() : 열거형의 모든 상수를 배열에 담아 반환
- valuesOf(String name) : 열거형 상수의 이름으로 문자열 상수에 대한 참조를 얻을 수 있음
- values(), valuesOf(String name) 모두 컴파일러가 자동적으로 추가해는 메서드임
Direction[] arr = Direction.values();
Direction d = Direction.valuesOf("WEST"); // d에 Derection.WEST 값 들어감
📌 java.lang.Enum
- 모든 열거형은 Enum의 자손이며, 아래 메서드 상속받는다.
- String name() : 열거형 상수의 이름을 문자열로 반환한다.
- int ordinal() : 열거형 상수가 정의된 순서를 반환한다. (0부터 시작)
- T valueOf(Class<T> enumType, String name), Class<E> getDeclaringClass()
📌EnumSet
- 열거형 타입과 함께 사용하기 위한 Set 구현체
[참고]
- 자바의정석
'스터디 > 2209_자바의정석' 카테고리의 다른 글
13주차 과제 : I/O (0) | 2022.11.04 |
---|---|
12주차 과제 : 애너테이션 (0) | 2022.10.25 |
10주차 과제 : 멀티쓰레드 프로그래밍 (0) | 2022.10.18 |
8주차 과제 : 인터페이스 (0) | 2022.10.11 |
7주차 과제 : 패키지 (0) | 2022.10.06 |
댓글