[Java] 열거형(enum)

Hee·2024년 4월 1일

Java 복습

목록 보기
18/46
post-thumbnail

열거형

자바는 열거타입을 이용하여 변수를 선언할 때 변수타입으로 사용할 수 있다.

  • 열거형은 JDK5에서 추가되었다.
  • JDK5 이전에는 상수를 열거형 대신 사용하였다.

열거형 대신 상수를 이용하는 방법

public class EnumExam {
	public static final String MALE = "MALE";
    public static final String FEMALE = "FEMALE";
    
    public static void main(String[] args) {
    	String gender1;
    	
        gender1 = EnumExam.MALE;
        gender1 = EnumExam.FEMALE;
    }
}

상수를 사용했을 때의 문제점
String으로 선언된 gender1에는 MALE, FEMALE 둘 중 한 가지 값을 갖기 원하는데, gender1의 type이 String이기 때문에 gender1="소년"; 이렇게 수행되어도 전혀 문제가 되지 않는다.

-> 실행할 때 원했던 값인 MALE, FEMALE 말고도 다른 값이 들어오게 되므로 문제를 발생시킬 수 있다.



해결방법

위와 같은 문제를 발생시키지 않게 하기 위해 열거형을 사용한다.

  • 정의 방법
enum Gender{
	MALE, FEMALE;
}
  • 열거형 사용 방법
Gender gender2;

gender2 = Gender.MALE;
gender2 = Gender.FEMALE;

Gender의 타입 변수에는 MALE이나 FEMALE만 대입이 가능하다. 다른 값은 저장할 수 없다. 특정 값만을 갖게 하려면 열거형을 사용하는 것이 좋다.

0개의 댓글