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

C# Boolean.GetTypeCode() 메서드 완벽 정리: 문법과 실전 예제

C#의 Boolean.GetTypeCode() 메서드는 Boolean 값 형식에 대한 타입 코드(TypeCode)를 반환하는 데 사용됩니다. 이 메서드는 IConvertible 인터페이스를 구현하며, 해당 값이 어떤 형식에 속하는지 런타임에서 확인해야 할 때 유용하게 활용할 수 있습니다.

문법(Syntax)

Boolean.GetTypeCode() 메서드의 기본 문법은 다음과 같습니다.

public TypeCode GetTypeCode ();

이 메서드는 매개변수를 받지 않으며, TypeCode 열거형 값을 반환합니다. Boolean 값 형식의 경우 항상 TypeCode.Boolean을 반환합니다.

예제 1: 문자열 및 Boolean 값과 함께 사용하기

다음 예제를 통해 GetTypeCode() 메서드가 실제로 어떻게 동작하는지 확인해 보겠습니다.

using System;
public class Demo {
    public static void Main(String[] args){
        string str = "JackSparrow!";
        bool val = true;
        char[] arr = { 'J', 'a'};
        Console.WriteLine("String = "+str);
        Console.WriteLine("String (after trim) = " + str.Trim(arr));
        Console.WriteLine("String (Hashcode) = "+str.GetHashCode());
        Console.WriteLine("Bool (Hashcode) = "+val.GetHashCode());
        Console.WriteLine("Bool (TypeCode) = "+val.GetTypeCode());
    }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

String = JackSparrow!
String (after trim) = ckSparrow!
String (Hashcode) = -203134198
Bool (Hashcode) = 1
Bool (TypeCode) = Boolean

출력 결과에서 볼 수 있듯이, true 값의 해시코드는 1이며, 타입 코드는 Boolean으로 반환되었습니다.

예제 2: true와 false 값 비교하기

이번에는 true와 false 두 가지 Boolean 값에 대해 각각 해시코드와 타입 코드를 확인해 보겠습니다.

using System;
public class Demo {
    public static void Main(String[] args){
        bool val1 = true;
        bool val2 = false;
        Console.WriteLine("Value1 (Hashcode) = "+val1.GetHashCode());
        Console.WriteLine("Value1 (TypeCode) = "+val1.GetTypeCode());
        Console.WriteLine("Value2 (Hashcode) = "+val2.GetHashCode());
        Console.WriteLine("Value2 (TypeCode) = "+val2.GetTypeCode());
    }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Value1 (Hashcode) = 1
Value1 (TypeCode) = Boolean
Value2 (Hashcode) = 0
Value2 (TypeCode) = Boolean

정리

Boolean.GetTypeCode() 메서드의 핵심 특징은 다음과 같습니다.

  • Boolean 값 형식에 대해 항상 TypeCode.Boolean을 반환합니다.
  • true의 해시코드는 1, false의 해시코드는 0입니다.
  • 매개변수를 받지 않으며, 반환 타입은 TypeCode 열거형입니다.

타입 코드는 리플렉션(Reflection)이나 직렬화 작업 시 객체의 형식을 동적으로 판별해야 하는 상황에서 특히 유용합니다. Boolean뿐만 아니라 Int32, String 등 다른 기본 형식들도 동일한 방식으로 GetTypeCode() 메서드를 제공하므로, 일관된 방식으로 형식 정보를 얻을 수 있다는 점도 기억해 두면 좋습니다.