hayu's 개발 일지

[TIL]240417 열거형(enum) 본문

기술/java

[TIL]240417 열거형(enum)

hayu00 2024. 4. 17. 21:23

열거형(enum) 이란?

  • 열거형(Enum)은 요소, 멤버라 불리는 명명된 값의 집합을 이루는 자료형이다. 즉, 상수로 구성된 특별한 클래스이다.
  • 클래스처럼 변수와 메서드를 가질 수 있지만, 상속이나 인스턴스를 생성할 수는 없으며, enum 값은 상수로 public, static, final 속성을 가지고 있어 변경될 수 없다.

enum의 장점

  • 데이터 값의 의미를 명확히 알 수 있다.
  • 컴파일 시 데이터 타입 및 유효성 체크를 할 수 있다.

enum 선언 방법

  • 열거형은 enum 키워드를 사용하여 정의하며, 열거형의 이름은 보통 클래스명과 같이 첫 글자를 대문자로 시작한다. {} 안에 열거값(열거 상수)은 ,로 구분하며 대문자를 사용한다.
  • 열거 상수가 여러 단어로 구성될 경우, 단어 사이를 밑줄(_)로 연결한다.
enum 열거형이름 {상수명1, 상수명2, ...}

// 예시
enum Week1 { 
	MON, 
	TUE, 
	WED, 
	THU, 
	FRI, 
	SAT,
	SUN
}

enum 참조 방식

  • enum 타입도 하나의 데이터 타입으로 변수를 선언하고 사용하면 된다.
  • enum 타입은 특수한 클래스이다. 기본 자료형 타입이 아닌 참조형 타입으로 분류된다.
// 열거타입 변수 = 열거타입.열거상수;
Week monday = Week.MONDAY;
Week sunday = Week.SUNDAY;

enum 메서드 종류

  • enum도 내장 메서드를 지니고 있다.

메서드 설명 반환 타입

name() 열거 객체의 문자열을 반환 String
ordinal() 열거 객체의 순번(0부터 시작)을 반환 int
compareTo() 열거 객체를 비교해서 순번 차이를 반환 int
valueOf(String name) 문자열을 입력받아서 일치하는 열거 객체를 반환 enum
values() 모든 열거 객체들을 배열로 반환 enum[]

 

참고 자료

- https://inpa.tistory.com/entry/JAVA-%E2%98%95-%EC%97%B4%EA%B1%B0%ED%98%95Enum-%ED%83%80%EC%9E%85-%EB%AC%B8%EB%B2%95-%ED%99%9C%EC%9A%A9-%EC%A0%95%EB%A6%AC

- https://kadosholy.tistory.com/114

- https://velog.io/@new_wisdom/Java-Enum-%EC%97%B4%EA%B1%B0%ED%98%95

- https://mine-it-record.tistory.com/204

'기술 > java' 카테고리의 다른 글

[TIL]240502 Garbage Collection  (0) 2024.05.02
[TIL]240424 JAVA ==과 equals() 차이  (0) 2024.04.24
[TIL]240416 wrapper 클래스  (0) 2024.04.16
[TIL]240410 JAVA Collection  (0) 2024.04.10
[TIL]240408 Scanner 클래스  (1) 2024.04.08