.Net में केवल विजुअल बेसिक स्विच स्टेटमेंट्स में रेंज की अनुमति देता है, लेकिन C # में इसके लिए कोई सिंटैक्स नहीं है।
C # में आपकी विशिष्ट समस्या से निपटने के बाद, मैं इसे इस प्रकार हल करूंगा:
if(number >= 1 && number <= 9)
{
if(number < 5)
{
}
else
{
}
}
else
{
}
इसे और स्पष्ट करने के लिए, मान लीजिए कि आपके पास प्रतिशत मूल्य है।
एक टेम्पलेट के रूप में अपनी समस्या का उपयोग करना, आप इस तरह दिखना चाहेंगे:
switch (percentage)
{
case (0 to 19):
break;
case (20 to 39):
break;
case (40 to 69):
break;
case (70 to 79):
break;
case (80 to 100):
break;
default:
break;
}
हालाँकि, चूंकि C # उस सिंटैक्स की अनुमति नहीं देता है, यहाँ एक समाधान है जो C # अनुमति देता है:
if (percentage >= 0 && percentage <= 100)
{
if (percentage >= 40)
{
if (percentage >= 80)
{
}
else
{
if (percentage >= 70)
{
}
else
{
}
}
}
else
{
if (percentage >= 20)
{
}
else
{
}
}
}
else
{
}
इसका उपयोग करने में थोड़ा समय लग सकता है, लेकिन इसे प्राप्त करने के बाद यह ठीक है।
व्यक्तिगत रूप से, मैं पर्वतमाला की अनुमति के लिए स्विच स्टेटमेंट का स्वागत करूंगा।
C # स्विच स्टेटमेंट का भविष्य
यहाँ कुछ विचार दिए गए हैं कि स्विच स्टेटमेंट को कैसे बेहतर बनाया जा सकता है:
संस्करण ए
switch(value)
{
case (x => x >= 1 && x <= 4):
break;
case (x => x >= 5 && x <= 9):
break;
default:
break;
}
संस्करण बी
switch(param1, param2, ...)
{
case (param1 >= 1 && param1 <= 4):
break;
case (param1 >= 5 && param1 <= 9 || param2 != param1):
break;
default:
break;
}