C#의 Decimal.GetTypeCode() 메서드는 Decimal 값 형식(value type)에 대한 TypeCode를 반환하는 데 사용됩니다. 이 메서드를 활용하면 변수의 실제 타입 정보를 런타임에 확인할 수 있어, 타입 검증이나 동적 처리가 필요한 상황에서 유용하게 활용할 수 있습니다.
구문(Syntax)
다음은 Decimal.GetTypeCode() 메서드의 기본 구문입니다.
public TypeCode GetTypeCode ();
예제 1
첫 번째 예제에서는 Decimal.MaxValue 값에 대해 GetTypeCode() 메서드를 사용하여 TypeCode를 확인해 보겠습니다.
using System;
public class Demo {
public static void Main(){
Decimal val = Decimal.MaxValue;
Console.WriteLine("Decimal Value = {0}", val);
Console.WriteLine("HashCode = {0}", (val.GetHashCode()) );
TypeCode type = val.GetTypeCode();
Console.WriteLine("TypeCode = "+type);
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Decimal Value = 79228162514264337593543950335 HashCode = 1173356544 TypeCode = Decimal
예제 2
이번에는 소수점이 포함된 Decimal 값을 사용하여 GetTypeCode() 메서드의 동작을 살펴보겠습니다.
using System;
public class Demo {
public static void Main(){
Decimal val = 3972.491M;
Console.WriteLine("Decimal Value = {0}", val);
Console.WriteLine("HashCode = {0}", (val.GetHashCode()) );
TypeCode type = val.GetTypeCode();
Console.WriteLine("TypeCode = "+type);
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Decimal Value = 3972.491 HashCode = 620041307 TypeCode = Decimal
정리
Decimal.GetTypeCode() 메서드는 매개변수 없이 호출되며, 항상 TypeCode.Decimal을 반환합니다. 위 예제에서 볼 수 있듯이 Decimal.MaxValue처럼 큰 값이나 소수점이 포함된 값 모두 동일하게 TypeCode.Decimal이 출력되는 것을 확인할 수 있습니다.