반응형
자바, enum 에 대한 자세한 이야기. |
enum 은 특수한 형태의 class 이다.
이 class 에는 기본적으로 다음 2개의 함수들이 제공된다.
values() : enum 안에 정의된 값들을 enum 타입의 배열로 return
ordinal() : enum 안에 정의되어 있는 각 값들의 인덱스 번호를 반환.
values() 는 iteration 용으로 사용하기 좋은데, ordinal() 의 경우는 사실 EnumSet 이나 EnumMep 등에서 사용하기 위해서 고안된 녀석, 즉 내부적인 사용용도로 고안되기 때문에 일반 유저가 사용하는 것은 비추된다. 그 이유는 ordinal 이라는 것이 정의순서에 기인하는데, 이는 enum 의 설계목적 자체에서 어긋나버린다. 따라서 만약 값이 따로 필요하다면 다음과 같이 사용하는 것이 좋다.
public enum Coins{
Sun( 1 ), Mon( 2 ), Tue( 3 ), Wed( 4 ), ....
private final int num;
public Coins( int num ){
this.num = num;
}
public int getValue(){
return num;
}
}
반응형
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[android] Intent Filter 를 이용하여 link 처리하기. (0) | 2013.09.19 |
---|---|
[android] WebView 의 위치가 갑자기 확 바뀌는 현상 (0) | 2013.09.17 |
[eclipse] Java 실행하면서 인자 전달하기. (0) | 2013.09.17 |
[Java] InputStream, OutputStream 의 자식 class 들. (0) | 2013.09.16 |
[android] Multiple APK Support (0) | 2013.09.15 |
댓글