C# 열거형(enum)이란?
C#에서 열거형(enumeration)은 값 형식(value type)에 속하는 데이터 타입으로, 이름이 지정된 정수 상수들의 집합을 의미합니다. 서로 연관된 상수들을 하나의 그룹으로 묶어 관리할 수 있기 때문에 코드의 가독성과 유지보수성이 크게 향상됩니다. 열거형은 enum 키워드를 사용하여 선언합니다.
enum 기본 문법
열거형을 선언하는 기본 문법은 다음과 같습니다.
enum <enum_name> {
enumeration list
};예를 들어, 차량의 종류를 나타내는 열거형은 다음과 같이 정의할 수 있습니다.
enum Vehicle { Car, Bus, Truck };열거형 멤버에는 별도의 값을 지정하지 않으면 기본적으로 0부터 시작하는 정수가 순서대로 할당됩니다. 따라서 위 예제에서는 Car가 0, Bus가 1, Truck이 2의 값을 갖습니다.
enum 키워드로 변수 유형 정의하기
다음 예제는 enum 키워드를 사용하여 변수 유형을 정의하고 실제로 활용하는 방법을 보여줍니다.
예제
using System;
namespace Demo {
class Program {
enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat };
static void Main(string[] args) {
int WeekdayStart = (int)Days.Mon;
int WeekdayEnd = (int)Days.Fri;
Console.WriteLine("Monday: {0}", WeekdayStart);
Console.WriteLine("Friday: {0}", WeekdayEnd);
Console.ReadKey();
}
}
}실행 결과
Monday: 1 Friday: 5
위 코드에서 Days 열거형은 일요일(Sun)부터 토요일(Sat)까지 요일 상수를 정의합니다. 첫 번째 멤버인 Sun이 0으로 초기화되기 때문에 Mon은 1, Fri는 5의 값을 가지며, (int) 캐스팅을 통해 해당 정수 값을 손쉽게 얻을 수 있습니다. 이처럼 enum을 활용하면 의미 있는 이름으로 상수를 관리할 수 있어 코드를 훨씬 직관적으로 만들 수 있습니다.