บทนำ
เมธอด Int64.GetTypeCode() ใน C# ใช้สำหรับคืนค่า TypeCode สำหรับชนิดข้อมูลค่า (value type) Int64 ซึ่งเป็นจำนวนเต็ม 64 บิตที่มีเครื่องหมาย
ไวยากรณ์ (Syntax)
public TypeCode GetTypeCode ();
ตัวอย่างที่ 1: การใช้งานพื้นฐาน
ตัวอย่างต่อไปนี้สาธิตการใช้งานเมธอด Int64.GetTypeCode() กับค่าต่ำสุดและค่าสูงสุดของ Int64
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 = " + val1.GetTypeCode());
Console.WriteLine("TypeCode for val2 = " + val2.GetTypeCode());
}
}
ผลลัพธ์
Value1 = 0 Value2 = 9223372036854775807 Are they equal? = False Value1 (HashCode) = 0 Value2 (HashCode) = -2147483648 TypeCode for val1 = Int64 TypeCode for val2 = Int64
ตัวอย่างที่ 2: การใช้งานกับค่าปกติ
ตัวอย่างนี้ทดสอบกับค่า Int64 ทั่วไป
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 = " + val1.GetTypeCode());
Console.WriteLine("TypeCode for val2 = " + val2.GetTypeCode());
}
}
ผลลัพธ์
Value1 = 8768768766 Value2 = 9223372036854775807 Are they equal? = False Value1 (HashCode) = 178834172 Value2 (HashCode) = -2147483648 TypeCode for val1 = Int64 TypeCode for val2 = Int64
สรุป
เมธอด GetTypeCode() จะคืนค่า TypeCode.Int64 สำหรับทุกค่าของชนิด long (Int64) ซึ่งเป็นประโยชน์เมื่อต้องการตรวจสอบชนิดข้อมูลในเวลารัน (runtime) โดยเฉพาะในการทำงานกับการสลับชนิด (type switching) หรือการเรียกใช้งานผ่าน Reflection