프로그래밍/Java

Java/enum 열거형

우진샘 2013. 5. 23. 14:37

enum 열거형

* 기본타입

enum SEASON {
    SPRING, SUMMER, FALL, WINTER
}

마지막에 세미콜론(;)을 붙이지 않는다.

 

* 값 설정 및 사용하기

enum SEASON {
    SPRING(3),
    SUMMER(5),
    FALL(2),
    WINTER(4);

    final int num;

    private SEASON(int num) {
        this.num = num;
    }

    public int getNum() {
        return num;
    }
}

public class Exam {
    public static void main(String[] ar) {
        System.out.println(SEASON.SPRING);
        System.out.println(SEASON.SPRING.ordinal());
        System.out.println(SEASON.SPRING.getNum());
        System.out.println(SEASON.WINTER);
        System.out.println(SEASON.WINTER.ordinal());
        System.out.println(SEASON.WINTER.getNum());
    }
}

== 결과 ==
SPRING
0
3
WINTER
3
4 

값을 사용할 경우에는 마지막에 세미콜론(;)을 붙여준다.
ordinal() 함수를 사용하면 해당 열거 상수의 순서 위치 알 수 있다.

 

* values() 함수

public class Exam {
    public static void main(String[] ar) {
        SEASON seasons[] = SEASON.values();
        for(SEASON temp :seasons) {
            System.out.println(temp);
        }
    }
}

== 결과 ==
SPRING
SUMMER
FALL
WINTER

values() 함수는 모든 열거 상수들을 배열의 형태로 리턴해 준다.

 

* valuesOf() 함수

public class Exam { public static void main(String[] ar) {
    String str = "WINTER";
    SEASON ss = SEASON.valueOf(str);
    System.out.println(ss);
    }
}

== 결과 ==
WINTER

valuesOf() 함수는 스트링 값을 열거형 값으로 되돌려 준다.

'프로그래밍 > Java' 카테고리의 다른 글

형변환  (0) 2013.05.29
System.getProperty()  (0) 2013.05.29
변수 타입별 크기 및 범위  (0) 2013.05.29
Java/Google Protocol Buffer 사용법  (0) 2013.05.28
public 클래스, default 클래스  (0) 2013.04.23