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()ব্যবহার করা ভালো।