열거형(enum, enumerated type)
- (자바의 문법 요소) 여러 상수들을 보다 편리하게 선언하고 관리할 수 있게 하며, 상수 명의 중복을 피하고, 타입에 대한 안정성을 보장
- 연관있는 상수들을 모아서 카테고리화하는 용도로 사용(상수끼리 꼬이거나 비교, 중복문제 등이 해결됨)
//enum 열거형이름 { 상수명1, 상수명2, 상수명3, ...}
//열거형이름.상수명
enum Seasons {
SPRING, //정수값 0 할당
SUMMER, //정수값 1 할당
FALL, //정수값 2 할당
WINTER //정수값 3 할당
}
Seasons.SPRING
- 관례적으로 대문자로 작성
- 따로 값을 지정해주지 않아도 자동적으로 0부터 시작하는 정수값이 할당
- switch-case 문과 엮어서 자주 사용됨
enum은 클래스이기때문에 메서드 밖에서 작성되어야 하며, 메서드를 가짐
리턴타입 | 메서드 | |
String | name() | 열거 객체가 가지고 있는 문자열을 리턴하며, 리턴되는 문자열은 열거타입을 정의할 때 사용한 상수 이름과 동일 |
int | ordinal() | 열거 객체의 순번(0~)을 리턴 |
int | compareTo(비교값) | 주어진 매개 값과 비교해서 순번 차이를 리턴 |
열거 타입 | valueOf(String name) | 주어진 문자열의 열거 객체를 리턴 |
열거 배열 | values() | 모든 열거 객체들을 배열로 리턴 |
'Coding > 언어-JAVA' 카테고리의 다른 글
JAVA 익명클래스, 람다 #Day8 (0) | 2023.08.16 |
---|---|
JAVA 에너테이션 #Day7 (0) | 2023.08.12 |
JAVA 예외(try-catch) #Day7 (0) | 2023.08.11 |
JAVA Generic 타입제한 2/2 #Day6 (0) | 2023.08.10 |
JAVA Generic 2/1 #Day6 (0) | 2023.08.09 |