c# - Dictionary - Getting the next element of a known element -


मान लीजिए मेरे पास निम्न शब्दकोश हैं:

  निजी IDictionary & lt; स्ट्रिंग, आईप्लेयर & gt;  

जहां IPlayer एक इंटरफ़ेस है जिसे निम्न प्रकार से परिभाषित किया गया है:

  सार्वजनिक इंटरफ़ेस आईप्लेयर {bool HasTurn {get; सेट; } स्ट्रिंग का नाम {get; सेट; }}  

मैं एक ऐसी विधि को कोड करने का प्रयास कर रहा हूं जो सक्रिय खिलाड़ी को पाता है, जिसकी बारी है, उसका मोड़ लें, और उसके बाद अगले प्लेयर को डिक्शनरी में बदलें ।

अब तक मेरे पास यह है:

  निजी शून्य अगली बार () (यदि (खेल!) वापसी; आईप्लेयर वास्तविक = खिलाड़ियों। मूल्य। प्रथम (पी = & gt; पी। हसटर्न); वास्तविक। हेटटर्न = गलत; // मैं डिक्शनरी में अगला खिलाड़ी कैसे प्राप्त करूं ?? }  "post-text" itemprop = "text"> 

शब्दकोश को औपचारिक रूप से परिभाषित ऑर्डर नहीं है - इसलिए आपको अलग-अलग संरचना की आवश्यकता है जो ऑर्डर प्लेयर ।

वास्तव में आप तत्वों की गणना कर सकते हैं और आप एक आदेश प्राप्त करेंगे (कार्यान्वयन के विवरण के कारण यह संभवत: एक ही आदेश होगा) - इसलिए यदि आपको केवल सूची प्राप्त करने की आवश्यकता है नियमित रूप से शब्दकोश में सभी खिलाड़ियों की शब्दकोश। मूल्य आपको संग्रह प्रदान करेगा। हालांकि "अगले" को परिभाषित करना संभव है, इस तरह से ज्यादातर लोग आपके कोड को पढ़ने में भ्रमित होंगे - विचार करें कि अन्य डेटा संरचना आपके इरादे को बेहतर दर्शाती है।

उपयोग करने की कोशिश करना एक विकल्प हो सकता है, लेकिन

एक सस्ता दृष्टिकोण एक खिलाड़ी के क्षेत्र के रूप में "अगला खिलाड़ी" होना चाहिए (संभवतः नाम / अन्य सूचकांक प्रकार के रूप में)।


Comments

Popular posts from this blog

python - Overriding the save method in Django ModelForm -

html - CSS autoheight, but fit content to height of div -

qt - How to prevent QAudioInput from automatically boosting the master volume to 100%? -