गणना प्रकार से अधिकतम मूल्य प्राप्त करना डेवलपर्स के सामने आने वाला एक सामान्य कार्य है। यह उन परिदृश्यों में आवश्यक है जहां आपको उपयोगकर्ता इनपुट को सत्यापित करने या एनम मान के आधार पर कुछ संसाधनों को संभालने की आवश्यकता होती है। C# Enum क्लास और थोड़े से LINQ का उपयोग करके इसे प्राप्त करने का एक सीधा तरीका प्रदान करता है।
आइए उस समाधान का पता लगाएं जो गणना के अधिकतम मूल्य को पुनर्प्राप्त करना पाई जितना आसान बनाता है।
सार्वजनिक एनम MyEnum
{
विकल्प1 = 1,
विकल्प2 = 2,
विकल्प3 = 3
}
...
सार्वजनिक int GetMaxEnumValue()
{
Enum.GetValues(typeof(MyEnum)).Cast वापस करें().मैक्स();
}
कोड का यह छोटा टुकड़ा एनम में उच्चतम मूल्य प्राप्त करने का सारा काम करता है। लेकिन ये कैसे काम करता है?
कोड में गहराई से उतरें
`Enum.GetValues(typeof(MyEnum))` समझने योग्य पहला महत्वपूर्ण भाग है। यह अंतर्निहित .NET विधि एक ऐरे लौटाती है जिसमें निर्दिष्ट गणना में स्थिरांक के मान होते हैं। गणना प्रकार को `टाइपऑफ़` कीवर्ड का उपयोग करके विधि के पैरामीटर के रूप में पारित किया जाता है।
एक बार जब हमारे पास सरणी हो, तो हमें इसे पूर्णांकों में डालना होगा। यह .कास्ट का उपयोग करके किया जाता है() विधि जो LINQ (भाषा एकीकृत क्वेरी) का एक हिस्सा है। LINQ .NET में तकनीकों और विधियों का एक सेट है जो हमें डेटा के साथ अधिक सहज और लचीले तरीके से काम करने की अनुमति देता है।
मानों को पूर्णांकों में डालने के बाद, अधिकतम मान प्राप्त करना .Max() विधि को कॉल करने जितना आसान है, जो LINQ द्वारा प्रदान किया गया एक और बेहतरीन उपकरण है। यह विधि पूर्णांक मानों के संग्रह में अधिकतम मान लौटाती है।
Enum और LINQ लाइब्रेरीज़ का लाभ उठाना
Enum वर्ग .NET में सिस्टम नेमस्पेस का एक हिस्सा है और गणना के साथ काम करने के लिए कई स्थिर तरीके प्रदान करता है। जब आपको एनम प्रकारों से संबंधित कोई भी ऑपरेशन करने की आवश्यकता होती है तो यह लाइब्रेरी का उपयोग किया जाता है।
दूसरी ओर, LINQ, System.Linq नेमस्पेस का हिस्सा, C# की सबसे शक्तिशाली विशेषताओं में से एक है। यह संग्रह को प्रभावी ढंग से संभालने के लिए विभिन्न तरीके प्रदान करता है, जैसे अधिकतम, न्यूनतम या औसत मान प्राप्त करना, डेटा को सॉर्ट करना और फ़िल्टर करना।
विस्तार में पढ़ें