💚 열거형(Enum)
· 관련된 상수의 집합을 나타내는 특별한 데이터 유형
· 열거형은 제한된 값을 가지며, 해당 값을 사용하여 변수를 할당하거나 조건문에서 사용 가능하다.
· 가독성을 향상시키며, 잘못된 값을 사용하는 실수를 방지한다.
💚 간단한 예시
· 요일을 나타내는 Enum
public enum Weekday {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY
}
· 변수 할당법
Weekday day = Weekday.MONDAY;
· switch문에서의 사용법
switch (day) {
case MONDAY:
case TUESDAY:
case WEDNESDAY:
case THURSDAY:
case FRIDAY:
System.out.println("평일입니다.");
break;
case SATURDAY:
case SUNDAY:
System.out.println("주말입니다.");
break;
default:
System.out.println("유효하지 않은 요일입니다.");
break;
}
💚 속성과 생성자
· Enum은 일반 클래스와 같이 속성과 생성자를 가질 수 있다.
· Enum 상수에 속성을 추가하려면 생성자를 정의하고, Enum 상수 뒤에 괄호를 사용하여 속성 값을 지정해주면 된다.
· 예시
public enum Season {
SPRING("Warm", 20),
SUMMER("Hot", 30),
AUTUMN("Cool", 15),
WINTER("Cold", 5);
private final String weather;
private final int averageTemperature;
Season(String weather, int averageTemperature) {
this.weather = weather;
this.averageTemperature = averageTemperature;
}
public String getWeather() {
return weather;
}
public int getAverageTemperature() {
return averageTemperature;
}
}
· Enum 속성에 접근하는 예시
public class Main {
public static void main(String[] args) {
Season currentSeason = Season.SUMMER;
System.out.println("Current season: " + currentSeason);
System.out.println("Weather: " + currentSeason.getWeather());
System.out.println("Average temperature: " + currentSeason.getAverageTemperature() + "°C");
}
}
· 실행 결과
Current season: SUMMER
Weather: Hot
Average temperature: 30°C
'Programming > Java' 카테고리의 다른 글
[Java] 자바 덱(Deque) 인터페이스 (0) | 2023.06.27 |
---|---|
[Java] 문자열을 조작하는 StringBuilder 클래스 (0) | 2023.06.21 |
[Java] Map 인터페이스의 value 변경하는 법 (0) | 2023.06.12 |
[Java] Comparator 인터페이스의 compare 메서드 (0) | 2023.05.30 |
[Java] 문자열 자르기 (substring) (0) | 2023.04.30 |
댓글