Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# 열거형(Enum) ToString() 메서드 – 문자열 변환 완벽 정리

C# 열거형 ToString() 메서드란?

C#에서 ToString() 메서드는 열거형(Enum) 인스턴스의 값을 이에 해당하는 문자열 표현으로 변환합니다. 기본적으로는 열거형 멤버의 이름을 반환하지만, 서식 지정자를 함께 사용하면 숫자 값 등 원하는 형태로 출력할 수도 있습니다.

열거형 선언하기

먼저 예제에 사용할 열거형을 정의합니다.

enum Vehicle { Car, Bus, Truck, Motobike };

이렇게 선언된 열거형 멤버에는 별도의 값을 지정하지 않으면 Car = 0, Bus = 1, Truck = 2, Motobike = 3과 같이 0부터 시작하는 정수 값이 자동으로 할당됩니다.

ToString()으로 문자열 변환하기

열거형 값을 문자열로 변환하려면 ToString() 메서드를 호출하면 됩니다.

Vehicle.Car.ToString("d")

여기서 사용된 서식 지정자 "d"는 열거형 멤버의 이름이 아닌, 해당 멤버에 할당된 정수 값을 문자열로 반환하도록 합니다. 반면 서식 지정자 없이 ToString()을 호출하면 "Car"와 같은 멤버 이름이 그대로 반환됩니다.

예제 코드

using System;

public class Demo {
    enum Vehicle { Car, Bus, Truck, Motobike };

    public static void Main() {
        Console.WriteLine("Vehicle.Car = {0}", Vehicle.Car.ToString("d"));
        Console.WriteLine("Vehicle.Bus = {0}", Vehicle.Bus.ToString("d"));
    }
}

실행 결과

Vehicle.Car = 0
Vehicle.Bus = 1

자주 사용되는 열거형 서식 지정자

  • G (기본값): 가능한 경우 멤버 이름을 반환하고, 정의되지 않은 값이면 정수 값을 반환합니다.
  • D: 열거형 값을 10진수 정수 문자열로 반환합니다.
  • X: 열거형 값을 16진수 문자열로 반환합니다.
  • F: Flags 특성이 적용된 열거형에서 여러 멤버 이름을 결합하여 반환합니다.