728x90
열거(Enum) 타입
한정된 값을 갖는 타입을 열거 타입(enumeration type)이라 한다.
열거 타입을 사용하려면 열거 타입 이름으로 소스 파일(.java)를 생성하고 한정된 값을 코드로 정의한다.
열거 타입 이름 첫 문자는 대문자로 하고 camel 스타일로 지어주는 것이 관례이다.
Week.java
StudentName.java
열거 상수란 열거 타입으로 사용할 수 있는 한정된 값이다.
관례적으로 알파벳으로 정의하며, 모두 대문자로 작성한다.
열거 상수가 여러 단어로 구성될 단어와 단어 사이를 언더바(_)로 연결한다.
Week today;
Week reservationDay;
열거 타입도 하나의 데이터이므로 변수를 선언하고 사용한다.
Week today = Week.SUNDAY;
열거 타입 변수에는 열거 상수를 대입할 수 있는데, '열거타입.열거상수' 형태로 작성한다.
Week birthday = null;
열거 타입은 참조 타입이므로 null도 대입 가능하다.
Week today = Week.SUNDAY;
today == Week.SUNDAY;
열거 변수의 값이 특정 열거 상수인지 비교할 때는 ==와 != 연산자를 사용한다.
예제
열거 상수 목록 작성 Week.java
public enum Week {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY
}
import java.util.Calendar;
public class WeekExample {
public static void main(String[] args) {
Week today = null;
Calendar cal = Calendar.getInstance();
int week = cal.get(Calendar.DAY_OF_WEEK);
switch (week) {
case 1:
today = Week.SUNDAY;
break;
case 2:
today = Week.MONDAY;
break;
case 3:
today = Week.TUESDAY;
break;
case 4:
today = Week.WEDNESDAY;
break;
case 5:
today = Week.THURSDAY;
break;
case 6:
today = Week.FRIDAY;
break;
case 7:
today = Week.SATURDAY;
break;
}
if (today == Week.SUNDAY) {
System.out.println("휴일");
} else {
System.out.println("출근");
}
}
}
728x90
'IT > Java' 카테고리의 다른 글
[Java] 클래스 / 인스턴스 / 메소드 (0) | 2024.02.29 |
---|---|
[Java] 객체 지향 프로그래밍 (0) | 2024.02.29 |
[Java] 배열 복사(Array Copy) (0) | 2024.02.27 |
[Java] 배열의 객체 참조 (0) | 2024.02.27 |
[Java] 다차원 배열 (0) | 2024.02.27 |