परिचय
Hashtable क्लास GetHash(object key) प्रोटेक्टेड मेथड प्रदान करती है जो निर्दिष्ट कुंजी के लिए हैश कोड लौटाती है। इसे एक्सेस करने के लिए Hashtable से एक क्लास प्राप्त करनी होती है।
उदाहरण 1: स्ट्रिंग कुंजियों के लिए हैश कोड
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("कुंजी और मान जोड़े...");
foreach(DictionaryEntry entry in hash) {
Console.WriteLine("{0} और {1} ", entry.Key, entry.Value);
}
Console.Write("कुंजी D के लिए हैश कोड = " + (hash.GetHash("D")));
}
}
आउटपुट
कुंजी और मान जोड़े... G और Gary A और Jacob B और Mark C और Tom D और Nathan E और Tim F और John कुंजी D के लिए हैश कोड = -842352676
उदाहरण 2: कैरेक्टर कुंजियों के लिए हैश कोड
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("कुंजी और मान जोड़े...");
foreach(DictionaryEntry entry in hash) {
Console.WriteLine("{0} और {1} ", entry.Key, entry.Value);
}
Console.WriteLine("कुंजी 1 के लिए हैश कोड = " + (hash.GetHash('1')));
Console.WriteLine("कुंजी 2 के लिए हैश कोड = " + (hash.GetHash('2')));
Console.WriteLine("कुंजी 3 के लिए हैश कोड = " + (hash.GetHash('3')));
Console.WriteLine("कुंजी 4 के लिए हैश कोड = " + (hash.GetHash('4')));
}
}
आउटपुट
कुंजी और मान जोड़े... 3 और Three 2 और Two 4 और Four 1 और One कुंजी 1 के लिए हैश कोड = 3211313 कुंजी 2 के लिए हैश कोड = 3276850 कुंजी 3 के लिए हैश कोड = 3342387 कुंजी 4 के लिए हैश कोड = 3407924
मुख्य बिंदु
GetHashप्रोटेक्टेड है; इसे कॉल करने के लिए Hashtable से प्राप्त क्लास बनाना आवश्यक है।- हैश कोड आंतरिक बकेट वितरण के लिए उपयोग किया जाता है।
- समान कुंजियों के लिए हैश कोड समान होता है, लेकिन टकराव संभव है।