목차
Enum이란?
enum은 열거형으로, 관련된 상수들을 같이 묶어 놓은 것을 말합니다.
Enum을 사용하는 이유
'요일'은 월화수목금토일 7가지,
'계절'은 봄여름가을겨울 4가지로 한정되어 있습니다.
이렇게 한정된 데이터들은 열거형으로 묶어주면 편합니다.
일일히 상수를 하나하나 정의하는 것보다 열거형을 사용하면 간단하게 정의 가능합니다.
값은 자동으로 0부터 순서대로 부여됩니다.
Enum의 정의와 사용법
열거형을 정의하는 방법은,
키워드 enum을 적고 열거형이름과 괄호 안에 콤마 구분자로 상수명들을 적어주면 됩니다.
예를 들어 디렉션이라는 열거형을 정의해보았습니다.
이 열거형을 사용할 때는,
열거형 타입의 변수를 선언을 합니다.
이때, 이 변수에는 열거형 안에 있는 네 개의 값 중 하나만 들어올 수 있습니다.
이외의 값은 들어올 수 없습니다.
열거형 상수의 비교법
열거형 상수를 비교할 때는,
등가비교연산자와 compareTo 메서드를 사용할 수 있습니다.
비교연산자는 사용할 수 없습니다.
Enum 메서드
모든 열거형의 조상인 Enum 클래스가 가지고 있는 메서드를 알아보겠습니다.
열거형 상수의 이름을 반환하는 name 메서드,
0부터 정의된 순서를 반환하는 ordinal 메서드,
지정된 열거형에서 일치하는 이름을 반환하는 valueOf 메서드가 있습니다.
그리고 컴파일러가 자동으로 추가해주는 메서드도 있습니다.
열거형의 모든 상수를 배열로 반환해주는 values 메서드와
열거형 상수의 이름을 넣으면 열거형 상수를 반환해주는 valuesOf 메서드가 있습니다.
Enum에 멤버 추가하기
열거형에 값을 넣어주지 않으면 자동으로 순서대로 0부터 들어간다고 말씀을 드렸습니다.
그런데 원하는 값을 넣으려면 괄호 안에 값을 넣어주면 됩니다.
참고 자료
[자바의 정석 - 기초편] ch12-17~20 열거형
https://youtu.be/ODHC-n4mpMY?si=6PsBY8V2xQiYK995
[자바의 정석 - 기초편] ch12-21,22 열거형멤버추가하기
https://youtu.be/R0WrMaKoLTE?si=sLw2HxT_GS80FIjN
'Java > 기술 스터디' 카테고리의 다른 글
OSI 7계층 (0) | 2023.10.16 |
---|---|
DTO & VO (0) | 2023.09.18 |
Cookie & Session (0) | 2023.08.14 |
HTTP & HTTPS (0) | 2023.08.14 |
Garbage Collection (0) | 2023.08.12 |