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

C# में Dictionary पर इटरेट करने का सर्वश्रेष्ठ तरीका


परिचय

Dictionary<TKey, TValue> कुंजी-मान जोड़े संग्रहीत करता है। इटरेशन के कई तरीके हैं; सबसे कुशल और पठनीय foreach के साथ KeyValuePair है।

उदाहरण: Dictionary बनाना और क्रमबद्ध इटरेशन

using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        // Dictionary बनाएं
        var dict = new Dictionary(5);
        dict.Add("car", 25);
        dict.Add("bus", 28);
        dict.Add("motorbike", 17);

        // मान के अनुसार आरोही क्रम में इटरेट (LINQ)
        var sorted = from entry in dict
                     orderby entry.Value ascending
                     select entry;

        foreach (KeyValuePair entry in sorted)
        {
            Console.WriteLine("{0} = {1}", entry.Key, entry.Value);
        }
        // आउटपुट:
        // motorbike = 17
        // car = 25
        // bus = 28
    }
}

अन्य इटरेशन तरीके

तरीकाकोडउपयोग केस
केवल कुंजियाँforeach (var key in dict.Keys)कुंजियों की सूची चाहिए
केवल मानforeach (var val in dict.Values)मानों की सूची चाहिए
कुंजी-मान जोड़ीforeach (var kvp in dict)सबसे सामान्य, दोनों चाहिए
LINQ OrderBydict.OrderBy(kvp => kvp.Value)क्रमबद्ध इटरेशन
Paralleldict.AsParallel().ForAll(...)बड़े डेटा के लिए समानांतर प्रसंस्करण

प्रदर्शन नोट

  • foreach सीधे एन्यूमरेटर उपयोग करता है (कोई इंडेक्सिंग ओवरहेड नहीं)।
  • for लूप Dictionary पर लागू नहीं (इंडेक्स द्वारा एक्सेस नहीं)।
  • बहुत बड़े Dictionary के लिए Dictionary<TKey, TValue> के बजाय ConcurrentDictionary या सॉर्टेड कलेक्शन पर विचार करें।
  1. Tkinter में टेबल में डेटा दिखाने का सबसे अच्छा तरीका क्या है? Tkinter में टेबल में डेटा दिखाने का सबसे अच्छा तरीका क्या है?

    आमतौर पर, हम डेटा को टेबल्स के रूप में दर्शाते हैं। एक टेबल में पंक्तियों और कॉलम का एक सेट होता है। डेटा टेबल में पंक्तियों और कॉलम के रूप में क्रमिक रूप से संग्रहीत होता है। मान लीजिए कि हम एक Tkinter एप्लिकेशन बना रहे हैं जैसे कि हमें छात्रों का डेटा कहीं टेबल में स्टोर करना है। टेबल संरचना में

  1. डुप्लिकेट फ़ाइलों को कुशलतापूर्वक हटाएं और डिस्क स्थान खाली करें डुप्लिकेट फ़ाइलों को कुशलतापूर्वक हटाएं और डिस्क स्थान खाली करें

    इन दिनों कंप्यूटर बड़ी हार्ड ड्राइव के साथ आते हैं। यह आपको बहुत लचीलापन देता है और आपको अपने कंप्यूटर पर बहुत सारी फ़ाइलें संग्रहीत करने की अनुमति देता है। आप वीडियो, संगीत फ़ाइलें, सैकड़ों फ़ोटो आदि संग्रहीत कर सकते हैं। लेकिन चाहे आपकी हार्ड ड्राइव कितनी भी बड़ी हो, एक दिन यह भर जाएगी और कोई स्था

  1. विंडोज के लिए सर्वश्रेष्ठ एंटीवायरस चुनना: एक विश्वसनीय गाइड विंडोज के लिए सर्वश्रेष्ठ एंटीवायरस चुनना: एक विश्वसनीय गाइड

    एक विंडोज उपयोगकर्ता के रूप में आपको एक विकल्प चुनना होगा - या तो एंटीवायरस इंस्टॉल करें या अपने पीसी के संक्रमित होने के परिणाम भुगतें। इसमें कोई संदेह नहीं, आप अपने लिए एक अच्छा सुरक्षा प्रोग्राम प्राप्त करना चाहेंगे, अधिमानतः मुफ्त में। लेकिन सबसे अच्छा एंटीवायरस क्या है? यहां बताया गया है कि अप