Int64.GetTypeCode() 메서드란?
C#에서 Int64.GetTypeCode() 메서드는 Int64(64비트 부호 있는 정수) 값 형식에 해당하는 TypeCode를 반환하는 데 사용됩니다. 이 메서드는 IConvertible 인터페이스의 일부로, 런타임에 변수의 형식 정보를 확인해야 할 때 유용하게 활용할 수 있습니다.
구문
Int64.GetTypeCode() 메서드의 기본 구문은 다음과 같습니다.
public TypeCode GetTypeCode ();
이 메서드는 매개변수를 받지 않으며, System.TypeCode 열거형 값 중 하나인 TypeCode.Int64를 반환합니다.
예제 1
다음은 Int64.GetTypeCode() 메서드를 구현한 첫 번째 예제입니다.
using System;
public class Demo {
public static void Main(){
long val1 = 0;
long val2 = Int64.MaxValue;
Console.WriteLine("Value1 = "+val1);
Console.WriteLine("Value2 = "+val2);
Console.WriteLine("Are they equal? = "+val1.Equals(val2));
Console.WriteLine("Value1 (HashCode) = "+val1.GetHashCode());
Console.WriteLine("Value2 (HashCode) = "+val2.GetHashCode());
TypeCode type1 = val1.GetTypeCode();
TypeCode type2 = val2.GetTypeCode();
Console.WriteLine("TypeCode for val1 = "+type1);
Console.WriteLine("TypeCode for val2 = "+type2);
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Value1 = 0 Value2 = 9223372036854775807 Are they equal? = False Value1 (HashCode) = 0 Value2 (HashCode) = -2147483648 TypeCode for val1 = Int64 TypeCode for val2 = Int64
예제 2
이번에는 서로 다른 값을 사용하여 Int64.GetTypeCode() 메서드를 구현한 또 다른 예제를 살펴보겠습니다.
using System;
public class Demo {
public static void Main(){
long val1 = 8768768766;
long val2 = Int64.MaxValue;
Console.WriteLine("Value1 = "+val1);
Console.WriteLine("Value2 = "+val2);
Console.WriteLine("Are they equal? = "+val1.Equals(val2));
Console.WriteLine("Value1 (HashCode) = "+val1.GetHashCode());
Console.WriteLine("Value2 (HashCode) = "+val2.GetHashCode());
TypeCode type1 = val1.GetTypeCode();
TypeCode type2 = val2.GetTypeCode();
Console.WriteLine("TypeCode for val1 = "+type1);
Console.WriteLine("TypeCode for val2 = "+type2);
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Value1 = 8768768766 Value2 = 9223372036854775807 Are they equal? = False Value1 (HashCode) = 178834172 Value2 (HashCode) = -2147483648 TypeCode for val1 = Int64 TypeCode for val2 = Int64
핵심 정리
· Int64.GetTypeCode() 메서드는 어떤 long 값이든 항상 TypeCode.Int64를 반환합니다.
· 매개변수를 받지 않는 인스턴스 메서드이며, 반환 타입은 System.TypeCode 열거형입니다.
· Int64.MaxValue(9,223,372,036,854,775,807)는 C#의 long 형식이 표현할 수 있는 최댓값입니다.
· Equals() 메서드를 통해 두 값의 동일 여부를 비교하고, GetHashCode()로 해시 코드를 확인할 수 있습니다.