C#-এ Int32.GetTypeCode() মেথডটি বর্তমান Int32 (int) ইনস্ট্যান্সের TypeCode এনামারেশন মান ফেরত দেয়। এটি রানটাইমে টাইপ আইডেন্টিফিকেশনের জন্য ব্যবহৃত হয়।
সিনট্যাক্স (Syntax)
public TypeCode GetTypeCode();
উদাহরণ ১: সম্পূর্ণ তথ্য সহ ব্যবহার
using System;
public class Demo
{
public static void Main()
{
int val1 = 100;
int val2 = 50;
Console.WriteLine("Value1 = " + val1);
Console.WriteLine("Value2 = " + val2);
Console.WriteLine("Are they equal? = " + val1.Equals(val2));
Console.WriteLine("HashCode for Value1 = " + val1.GetHashCode());
Console.WriteLine("HashCode for Value2 = " + val2.GetHashCode());
TypeCode type1 = val1.GetTypeCode();
TypeCode type2 = val2.GetTypeCode();
Console.WriteLine("TypeCode for Value1 = " + type1);
Console.WriteLine("TypeCode for Value2 = " + type2);
}
}
আউটপুট
Value1 = 100 Value2 = 50 Are they equal? = False HashCode for Value1 = 100 HashCode for Value2 = 50 TypeCode for Value1 = Int32 TypeCode for Value2 = Int32
উদাহরণ ২: MaxValue সহ ব্যবহার
using System;
public class Demo
{
public static void Main()
{
int val1 = 5;
int val2 = Int32.MaxValue; // 2147483647
Console.WriteLine("Value1 = " + val1);
Console.WriteLine("Value2 = " + val2);
TypeCode type1 = val1.GetTypeCode();
TypeCode type2 = val2.GetTypeCode();
Console.WriteLine("TypeCode for Value1 = " + type1);
Console.WriteLine("TypeCode for Value2 = " + type2);
}
}
আউটপুট
Value1 = 5 Value2 = 2147483647 TypeCode for Value1 = Int32 TypeCode for Value2 = Int32
Int32.GetHashCode() এর আচরণ
উদাহরণে দেখা গেলে GetHashCode() মানটি নিজেই ইন্টিজার মান ফেরত দেয় (১০০ এর হ্যাশ ১০০, ৫০ এর হ্যাশ ৫০)। এটি Int32-এর জন্য ডিফল্ট ইমপ্লিমেন্টেশন।
TypeCode এর ব্যবহারিক প্রয়োগ
using System;
public class TypeAnalyzer
{
public static void Analyze(object obj)
{
if (obj == null)
{
Console.WriteLine("Null object");
return;
}
TypeCode code = Type.GetTypeCode(obj.GetType());
switch (code)
{
case TypeCode.Int32:
Console.WriteLine($"32-bit integer: {obj}");
break;
case TypeCode.Int64:
Console.WriteLine($"64-bit integer: {obj}");
break;
case TypeCode.String:
Console.WriteLine($"String: {obj}");
break;
case TypeCode.Double:
Console.WriteLine($"Double: {obj}");
break;
default:
Console.WriteLine($"Other type ({code}): {obj}");
break;
}
}
public static void Main()
{
Analyze(42);
Analyze(42L);
Analyze("Hello");
Analyze(3.14);
Analyze(new object());
}
}
আউটপুট
32-bit integer: 42 64-bit integer: 42 String: Hello Double: 3.14 Other type (Object): System.Object
GetTypeCode() vs GetType()
| মেথড | রিটার্ন | ব্যবহার |
|---|---|---|
GetTypeCode() | TypeCode (enum) | দ্রুত টাইপ ক্যাটাগরি জানতে |
GetType() | Type অবজেক্ট | বিস্তারিত রিফ্লেকশন/মেটাডেটা |
সারসংক্ষেপ: Int32.GetTypeCode() সবসময় TypeCode.Int32 ফেরত দেয়। এটি কম্পাইল-টাইম কনস্ট্যান্ট ফলাফল দেয়।