[JAVA] 상수 집합 | enum

·2025년 7월 7일
0

JAVA

목록 보기
15/17

📍enum

  • 서로 연관 있는 여러 개의 상수 집합을 정의할 때 사용.
// 어느 카페에서 아메리카노, 아이스 아메리카노, 라떼 세 종류를 판매한다면 
enum CoffeeType {
    AMERICANO,
    ICE_AMERICANO,
    CAFE_LATTE
};

아래와 같이 활용할 수 있다.

public class Sample {
    enum CoffeeType {
        AMERICANO,
        ICE_AMERICANO,
        CAFE_LATTE
    };

    public static void main(String[] args) {
        System.out.println(CoffeeType.AMERICANO);  // AMERICANO 출력
        System.out.println(CoffeeType.ICE_AMERICANO);  // ICE_AMERICANO 출력
        System.out.println(CoffeeType.CAFE_LATTE);  // CAFE_LATTE 출력
    }
}

반복문을 사용할 경우는 아래와 같다.

public class Sample {
    enum CoffeeType {
        AMERICANO,
        ICE_AMERICANO,
        CAFE_LATTE
    };

    public static void main(String[] args) {
        for(CoffeeType type: CoffeeType.values()) {
            System.out.println(type);  // 순서대로 AMERICANO, ICE_AMERICANO, CAFE_LATTE 출력
        }
    }
}
  • 이때 CoffeeType.values()는 CoffeType의 배열을 리턴한다.


enum의 필요성

  • 매직 넘버를 사용할 때보다 코드가 명확하다.
  • 잘못된 값을 사용해 생길 수 있는 오류를 막을 수 있다.
// 1. 상수를 사용한 경우
public static final int MALE = 1;
public static final int FEMALE = 2;

int gender = 3; // 잘못된 값도 입력 가능
// 2. enum을 이용한 경우
enum Gender {
    MALE, FEMALE
}

Gender gender = Gender.MALE;
// Gender.MALE 또는 Gender.FEMALE만 선택 가능
// gender = 3; 같은 잘못된 값은 컴파일 에러 발생 → 안정성 확보
profile
To Dare is To Do

0개의 댓글