반응형

Enum개념과 사용법 이를 응용하기 위해 좀 많이 헤맸다.


TestEnum 클래스를 만들고 여기서 StudentEnum을 사용하여 열거형의 이름과 인덱스를 구해보고자 한다.


Enum을 생성하는 방법은  클래스를 만들어서 사용하는 방법,

클래스 내부에 선언해서 사용하는 방법 등..

여러가지가 있지만 나는 Enum클래스를 따로 생성하여 실행 할 것이다.


StudentEnum.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package hasA;
 
public enum StudentEnum {
    //Student Enum이 가질 열거형
    NAME(0"이름"), 
    KOR(1,"국어"), 
    ENG(2"영어"), 
    MATH(3,"수학"), 
    SUM(4"총합"), 
    AVG(5"평균");
    
    private int studentIndex;
    private String studentName;
    
    StudentEnum(int studentIndex, String subjectName) {
        this.studentIndex = studentIndex;
    }
 
    //getStudentIndex의 Getter
    public int getStudentIndex() {
        return studentIndex;
    }
 
    //getStudentName의 Getter
    public String getStudentName() {
        return studentName;
    }
}
 
cs


TestEnum.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package hasA;
 
public class TestEnum {
    
    private StudentEnum se;
    
    public void getValue() {
        
        StudentEnum[] tmpSe = this.se.values();
        
        //각각 해당하는 열거형 이름값 가져오기
        for(int i=0; i<tmpSe.length; i++) {
            System.out.println(tmpSe[i].toString());
        }
    }
    
    public static void main(String[] args) {
        
        TestEnum te = new TestEnum();
 
        te.getValue();
    }
}
 
cs

TestEnum.java에서 getValue()는 StudentEnum의 열거형 값을 가져온다.

tmpSe레퍼런스에 this.se.value()를 통해 StudentEnum의 열거형을 배열 레퍼런스로 바꿔 저장한다.

이후 for문을 돌리면서 값을 출력..


좀 더 공부해야겠다..ㅎ


반응형

+ Recent posts