그거/Java

enum 사용하기

뽀기 2013. 5. 2. 15:54

enum 잘 안썼는데..  걍 정리해봄.


1. 단순 상수로 사용하기

public enum Gender { MALE, FEMALE };

public static void main(String[] args) {

System.out.println(Gender.MALE);

}


# 출력 #

MALE



2. 값 설정해서 사용하기

public enum Gender {

MALE(1), FEMALE(2);

private int value;

private Gender(int value) {

this.value = value;

}

public int getValue() {

return this.value;

}

}


public static void main(String[] args) {

System.out.println(Gender.MALE);

System.out.println(Gender.MALE.getValue());

}


# 출력 #

MALE

1



3. method override 해서 사용하기

public enum Gender {

MALE(1), FEMALE(2);

private int value;

private Gender(int value) {

this.value = value;

}

public int getValue() {

return this.value;

}

public String toString() {

switch(value) {

case 10 :

return "MAN";

case 20:

return "WOMAN";

default :

return "???";

}

}

}


public static void main(String[] args) {

System.out.println(Gender.MALE);

System.out.println(Gender.MALE.getValue());

System.out.println(Gender.FEMALE);

System.out.println(Gender.FEMALE.getValue());

}


# 출력 #

MAN

10

WOMAN

20



4. switch/case 에 사용하기

public enum Gender {

MALE(1), FEMALE(2);

private int value;

private Gender(int value) {

this.value = value;

}

public int getValue() {

return this.value;

}

public String toString() {

switch(value) {

case 10 :

return "MAN";

case 20:

return "WOMAN";

default :

return "???";

}

}

}


public static void main(String[] args) {

Gender male = Gender.MALE;

switch(male) {

case MALE:

System.out.println("MAN~~~");

break;

case FEMALE:

System.out.println("WOMAN~~~");

break;

default :

System.out.println("UHM.....");

break;

}

}


# 출력 #

MAN~~~