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

C#-এ Hashtable-এ নির্দিষ্ট কীর হ্যাশ কোড পাওয়া

Hashtable ক্লাসে GetHash(object key) মেথড ব্যবহার করে নির্দিষ্ট কীর হ্যাশ কোড বের করা যায়। এটি অভ্যন্তরীণভাবে হ্যাশ টেবিলের বালতি (bucket) নির্ধারণে ব্যবহৃত হয়।

উদাহরণ ১: স্ট্রিং কীর হ্যাশ কোড

using System;
using System.Collections;

public class HashCode : Hashtable {
    public static void Main(string[] args) {
        HashCode hash = new HashCode();
        hash.Add("A", "Jacob");
        hash.Add("B", "Mark");
        hash.Add("C", "Tom");
        hash.Add("D", "Nathan");
        hash.Add("E", "Tim");
        hash.Add("F", "John");
        hash.Add("G", "Gary");

        Console.WriteLine("Key and Value pairs...");
        foreach(DictionaryEntry entry in hash) {
            Console.WriteLine("{0} and {1} ", entry.Key, entry.Value);
        }

        Console.Write("HashCode for key D =" + (hash.GetHash("D")));
    }
}

আউটপুট

Key and Value pairs...
G and Gary
A and Jacob
B and Mark
C and Tom
D and Nathan
E and Tim
F and John
HashCode for key D =-842352676

উদাহরণ ২: ক্যারেক্টার কীর হ্যাশ কোড

using System;
using System.Collections;

public class HashCode : Hashtable {
    public static void Main(string[] args) {
        HashCode hash = new HashCode();
        hash.Add('1', "One");
        hash.Add('2', "Two");
        hash.Add('3', "Three");
        hash.Add('4', "Four");

        Console.WriteLine("Key and Value pairs...");
        foreach(DictionaryEntry entry in hash) {
            Console.WriteLine("{0} and {1} ", entry.Key, entry.Value);
        }

        Console.WriteLine("HashCode for key 1 = " + (hash.GetHash('1')));
        Console.WriteLine("HashCode for key 2 = " + (hash.GetHash('2')));
        Console.WriteLine("HashCode for key 3 = " + (hash.GetHash('3')));
        Console.WriteLine("HashCode for key 4 = " + (hash.GetHash('4')));
    }
}

আউটপুট

Key and Value pairs...
3 and Three
2 and Two
4 and Four
1 and One
HashCode for key 1 = 3211313
HashCode for key 2 = 3276850
HashCode for key 3 = 3342387
HashCode for key 4 = 3407924

নোট

  • GetHash প্রটেক্টেড মেথড, তাই এ্যাক্সেসের জন্য Hashtable ইনহেরিট করতে হয় (যেমন উদাহরণে HashCode : Hashtable)।
  • হ্যাশ কোড রানটাইমে ভিন্ন হতে পারে (হ্যাশ র‍্যান্ডমাইজেশন)।
  • সাধারণ ব্যবহারে key.GetHashCode() ব্যবহার করা ভালো।
  1. C#-এ Hashtable-এ থেকে নির্দিষ্ট কীवाले উপাদান অপসারণ করুন

  2. C#-এ Hashtable-এ পুনরাবৃত্তি করার জন্য এনিউমারেটর পান

  3. C#-এ Int64 ইনস্ট্যান্সের হ্যাশ কোড পাওয়া

  4. C#-এ Hashtable-তে নির্দিষ্ট কী রয়েছে কিনা তা যাচাই করুন