StringDictionary
कक्षा का उपयोग करके, LINQ के OrderBy
का उपयोग करने का एक तरीका यहां दिया गया है। मान लें कि आपके पास .NET 3.5 है।
var sortedDictionary = dictionary.Cast<DictionaryEntry>().OrderBy(pair => pair.Value);
2.0 का उपयोग करके, यह थोड़ा सा ट्रिकियर है। एक तुलना प्रतिनिधि का उपयोग कर एक दृष्टिकोण यहां दिया गया है।
StringDictionary dictionary = new StringDictionary();
dictionary.Add("1", "One");
dictionary.Add("2", "Two");
dictionary.Add("3", "Three");
DictionaryEntry[] sortedDictionary = new DictionaryEntry[dictionary.Count];
dictionary.CopyTo(sortedDictionary, 0);
Comparison<DictionaryEntry> comparison = new Comparison<DictionaryEntry>(delegate (DictionaryEntry obj1, DictionaryEntry obj2) { return ((string)obj1.Value).CompareTo((string)obj2.Value); });
Array.Sort(sortedDictionary, comparison);
तो वास्तविक तरह sortedDictionary सरणी में होगा।
स्रोत
2010-07-26 14:49:01
46 सेकंड ..... – Will
दरअसल यह केवल मूल्यों को क्रमबद्ध करेगा, न कि संबंधित कुंजी भी। – SWeko
@Sweko यह मूल्य (डी [के] = मूल्य) द्वारा क्रमबद्ध कुंजी का चयन करता है। – Will