스택큐힙리스트

C#에서 int를 enum으로 캐스팅하는 방법은 무엇인가요? 본문

카테고리 없음

C#에서 int를 enum으로 캐스팅하는 방법은 무엇인가요?

스택큐힙리스트 2023. 3. 12. 10:32
반응형

C#에서 int을 enum으로 변환하는 방법은 무엇인가요?

답변 1

정수에서:

YourEnum foo = (YourEnum)yourInt;

문자열로부터:

YourEnum foo = (YourEnum) Enum.Parse(typeof(YourEnum), yourString);

// The foo.ToString().Contains(,) check is necessary for

// enumerations marked with a [Flags] attribute.

if (!Enum.IsDefined(typeof(YourEnum), foo) && !foo.ToString().Contains(,))

{

throw new InvalidOperationException(

${yourString} is not an underlying value of the YourEnum enumeration.

);

}

숫자에서:

YourEnum foo = (YourEnum)Enum.ToObject(typeof(YourEnum), yourInt);

답변 2

C#에서 int를 enum으로 변환하는 방법은 매우 간단합니다.

우선, C#에서는 기본적으로 열거형(enum)과 정수형(int) 간의 형 변환이 가능합니다. 이는 열거형의 각 원소(element)들이 각각 정확히 정수형 값을 가지고 있기 때문입니다.

따라서, int를 enum으로 변환할 때는 simplement 캐스트(cast) 연산자를 사용하여 int 값을 enum 값으로 변환해주면 됩니다.

예를 들어, 다음과 같은 enum을 정의했다고 가정해봅시다.

enum Day

{

Monday,

Tuesday,

Wednesday,

Thursday,

Friday,

Saturday,

Sunday

}

이때, int 값을 Day enum으로 변환하려면 다음과 같이 캐스트(cast) 연산자를 사용하면 됩니다.

int myInt = 3;

Day myDay = (Day)myInt;

위 코드에서, myInt 변수에 3을 저장하고, 이를 Day enum으로 변환하여 myDay 변수에 할당합니다. 이때, 캐스트(cast) 연산자를 사용하여 int 값을 Day enum 값으로 변환합니다.

따라서, C#에서 int 값을 enum으로 변환하는 방법은 위와 같이 쉽게 수행할 수 있습니다.

이와 같은 enum 형 변환 방법에 대한 정보를 제공함으로써, 이 글은 C# 프로그래머들에게 유용한 정보가 될 것입니다.

반응형
Comments