কম্পিউটার টিউটোরিয়াল

C#-এ Int32.GetTypeCode() মেথড: int-এর টাইপ কোড পেতে


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 ফেরত দেয়। এটি কম্পাইল-টাইম কনস্ট্যান্ট ফলাফল দেয়।

  1. C#-এ DateTime.GetTypeCode() মেথড

  2. C#-এ UInt32.GetTypeCode() মেথড: উদাহরণ সহ ব্যাখ্যা

  3. C#-এ UInt64.GetTypeCode() মেথড: UInt64-এর টাইপ কোড পেতে

  4. C#-এ UInt16.GetTypeCode() মেথড উদাহরণসহ