본문 바로가기
Programming/JAVA(eclipse)

java 11일차 _ 01. 유틸리티 클래스( enum )

by yoon9i 2024. 3. 22.

6) enum 타입
==> 개별적으로 사용되는 여러개의 상수를 효율적으로 사용가능한
        객체이다.
==> 문법:

public enum enum명 {
     상수명, 상수명2, ...;
}

- enum명.상수명 형식으로 사용
- 상수값은 알려진 값이 대부분 ex) 요일, 월, 계절, 학년

==> switch 문에서 주로 사용됨.

package exam19_Util;

import java.util.Arrays;

// 클래스 밖에서도 가능
enum Day {
	SUNDAY, MONDAY, TUESDAY
}

public class Util06_enum {
	// 클래스 안에서도 가능
	enum Day2 {
		SUNDAY, MONDAY, TUESDAY
	}


	public static void main(String[] args) {

		// 1. enum 얻기
		Day d = Day.SUNDAY;

		switch (d) {
		case SUNDAY:
			System.out.println("SUNDAY");
			break;
		case MONDAY:
			System.out.println("MONDAY");
			break;
		default:
			System.out.println("default");
			break;
		}
		
		// >>> SUNDAY

		//-----------------------------------------------------------------------
		// 일반적으로 상수를 쓸때는 실행후에 오류를 알수가 있는데 enum 은 컴파일할때 부터 에러가 발생
		
//		final int SUN = 10;
//		final int MON = 20;
//
//		switch (SUN) {
//		case 100:
//			System.out.println("SUN");
//		}
		//-----------------------------------------------------------------------
		
		Day [] days = Day.values();
		System.out.println(Arrays.toString(days)); // >>> [SUNDAY, MONDAY, TUESDAY]
		
	}

}