Unity

enum 에서 문자열을 통한 조회 방법

Dean83 2023. 10. 18. 21:25

보통 데이터를 json으로 통해 받을경우, 문자열인 경우가 많다. 

코드 내부에서 enum을 사용하여 이를 매칭할 때에 if문이나 switch 문을 이용하게 되면, 

해당 enum 이 변경되었을때 대응이 되지 않는다. 

 

적어도 enum을 문자열 변환하였을때 동일한 상황이라면, 다음을 통해 간단히 enum을 리턴받을 수 있다. 

 

Enum클래스명[] 변수명 = Enum.GetValues(typeof(Enum클래스명)).Cast<Enum클래스명>().ToArray();

if (변수명 == null || departments.Count() <= 0)
    return Enum클래스명.NONE;

List<Enum클래스명> selectedItem = (from item in 변수명
                                     where item.ToString().ToUpper() == name.ToUpper()
                                     select item).ToList();

if(selectedItem == null || selectedItem.Count <= 0)
   return Enum클래스명.NONE;

return selectedItem[0];

'Unity' 카테고리의 다른 글

메쉬 생성(vector3 기반)  (1) 2023.10.18
HeightMap을 통한 실제 지형 Terrain 생성  (0) 2023.10.18
GLB 파일 임포트  (0) 2023.10.18
카메라 띄우기  (0) 2022.04.04
(VR) 윈도우 VR 을 위한 Universal Window 빌드방법  (0) 2022.03.25