Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में Hashtable की निर्दिष्ट कुंजी के लिए हैश कोड प्राप्त करना

परिचय

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 से प्राप्त क्लास बनाना आवश्यक है।
  • हैश कोड आंतरिक बकेट वितरण के लिए उपयोग किया जाता है।
  • समान कुंजियों के लिए हैश कोड समान होता है, लेकिन टकराव संभव है।
  1. - C# में Hashtable के माध्यम से पुनरावृति करने वाला एन्यूमरेटर प्राप्त करें

    C# में Hashtable के तत्वों पर पुनरावृति करने वाला एन्यूमरेटर प्राप्त करने के लिए, हम GetEnumerator() मेथड का उपयोग करते हैं जो IDictionaryEnumerator लौटाता है। यह एन्यूमरेटर कुंजी-मान जोड़े पर पुनरावृति करने के लिए Key और Value प्रॉपर्टीज प्रदान करता है। Hashtable System.Collections नेमस्पेस में स्

  1. - C# में वर्तमान Int64 इंस्टेंस का हैश कोड प्राप्त करें

    C# में Int64 (या long) संरचना की GetHashCode() विधि का उपयोग करके वर्तमान इंस्टेंस का हैश कोड प्राप्त किया जा सकता है। यह विधि 32-बिट हस्ताक्षरित पूर्णांक लौटाती है जो मान के आधार पर गणना की जाती है। उदाहरण 1: दो अलग-अलग long मानों के हैश कोड using System; public class Demo { public static voi

  1. - C# में Hashtable में किसी विशिष्ट कुंजी की जांच कैसे करें

    C# में Hashtable किसी विशिष्ट कुंजी को रखता है या नहीं, यह जांचने के लिए ContainsKey() मेथड का उपयोग किया जाता है। यह मेथड एक बूलियन मान लौटाता है। उदाहरण 1 using System; using System.Collections; public class Demo { public static void Main() { Hashtable hash = new Hashtable();