C# एक विशेष डेटा प्रकार, अशक्त प्रकार प्रदान करता है, जिसके लिए आप मानों की सामान्य श्रेणी के साथ-साथ शून्य मान भी निर्दिष्ट कर सकते हैं।
सी # 2.0 ने शून्य प्रकार पेश किए जो आपको मूल्य प्रकार चर के लिए शून्य असाइन करने की अनुमति देते हैं। आप Nullable का उपयोग करके अशक्त प्रकार घोषित कर सकते हैं जहाँ T एक प्रकार है।
-
निरर्थक प्रकारों का उपयोग केवल मान प्रकारों के साथ किया जा सकता है।
-
यदि मान शून्य है, तो Value प्रॉपर्टी एक InvalidOperationException को फेंक देगी; अन्यथा यह मान वापस कर देगा।
-
यदि चर में कोई मान है, या यदि यह शून्य है, तो HasValue गुण सत्य लौटाता है।
-
आप केवल ==और !=ऑपरेटरों का उपयोग एक शून्य प्रकार के साथ कर सकते हैं। अन्य तुलना के लिए Nullable स्थिर वर्ग का उपयोग करें।
-
नेस्टेड अशक्त प्रकारों की अनुमति नहीं है। अशक्त<अशक्त
> i; संकलन समय त्रुटि देगा।
उदाहरण 1
static class Program{ static void Main(string[] args){ string s = "123"; System.Console.WriteLine(s.ToNullableInt()); Console.ReadLine(); } static int? ToNullableInt(this string s){ int i; if (int.TryParse(s, out i)) return i; return null; } }
आउटपुट
123
जब नल को एक्सटेंशन विधि में पास किया जाता है तो यह कोई मान प्रिंट नहीं करता है
static class Program{ static void Main(string[] args){ string s = null; System.Console.WriteLine(s.ToNullableInt()); Console.ReadLine(); } static int? ToNullableInt(this string s){ int i; if (int.TryParse(s, out i)) return i; return null; } }