Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# 8.0 में नया Switch Expression कैसे लिखें?

C# 8.0 ने switch expression पेश किया जो एक्सप्रेशन कॉन्टेक्स्ट में स्विच-जैसी सेमेंटिक्स प्रदान करता है। यह पारंपरिक switch स्टेटमेंट से अधिक संक्षिप्त और अभिव्यंजक है।

पारंपरिक Switch Statement

switch (c) {
    case Fruits.Red:
        Console.WriteLine("The Fruit is red");
        break;
    case Fruits.Green:
        Console.WriteLine("The Fruit is green");
        break;
    case Fruits.Blue:
        Console.WriteLine("The Fruit is blue");
        break;
    default:
        Console.WriteLine("The Fruit is unknown.");
        break;
}

नया Switch Expression (C# 8.0+)

var message = c switch {
    Fruits.Red   => "The Fruit is red",
    Fruits.Green => "The Fruit is green",
    Fruits.Blue  => "The Fruit is blue",
    _            => "The Fruit is unknown."  // डिफ़ॉल्ट केस (_ डिस्कार्ड पैटर्न)
};

पूर्ण उदाहरण

class Program {
    public enum Fruits { Red, Green, Blue }
    
    public static void Main() {
        Fruits c = (Fruits)(new Random()).Next(0, 3);
        
        // नया switch expression - एक वेरिएबल को असाइन करता है
        var message = c switch {
            Fruits.Red   => "The Fruit is red",
            Fruits.Green => "The Fruit is green",
            Fruits.Blue  => "The Fruit is blue",
            _            => "The Fruit is unknown."
        };
        
        System.Console.WriteLine(message);
        Console.ReadLine();
    }
}

आउटपुट

The Fruit is green

Switch Expression के लाभ

  • एक्सप्रेशन-बॉडीड: सीधे मान लौटाता है, स्टेटमेंट ब्लॉक की आवश्यकता नहीं
  • कोई break आवश्यक नहीं: फॉल-थ्रू बग्स समाप्त
  • पैटर्न मैचिंग: प्रॉपर्टी पैटर्न, टुपल पैटर्न, रिलेशनल पैटर्न आदि का समर्थन
  • अधिक संक्षिप्त: कम बॉयलरप्लेट कोड
  • डिस्कार्ड पैटर्न (_): डिफ़ॉल्ट केस के लिए साफ सिंटैक्स

उन्नत पैटर्न मैचिंग उदाहरण

// प्रॉपर्टी पैटर्न
var result = person switch {
    { Age: < 18 } => "Minor",
    { Age: >= 18, Age: < 65 } => "Adult",
    { Age: >= 65 } => "Senior",
    _ => "Unknown"
};
  1. Apple Watch को नए iPhone पर कैसे स्विच करें Apple Watch को नए iPhone पर कैसे स्विच करें

    नया iPhone खरीदना रोमांचक है, और आप बस नए कैमरे और अपडेटेड फीचर्स को आजमाना चाहते हैं। आखिरी चीज जो आप करना चाहते हैं वह है अपने पुराने iPhone से नए पर Apple Watch ट्रांसफर करते समय डेटा खोने की चिंता करना। बिल्कुल आपके नए iPhone की तरह, Apple Watch दुनिया से आपके कनेक्शन का विस्तार है, और आप सब कु

  1. नए जीमेल ऐप को पर्सनलाइज़ कैसे करें नए जीमेल ऐप को पर्सनलाइज़ कैसे करें

    नए जीमेल ऐप में आप जो सुधार अभी देख रहे हैं, वे कुछ ऐसे हैं जो आप आते हुए देख सकते थे। कुछ समय पहले गूगल ने घोषणा की थी कि वे इनबॉक्स ऐप को छोड़ने जा रहे हैं फिर भी जीमेल ऐप में सुधार करेंगे। नया जीमेल ऐप अभी भी उपयोग में आसान है, लेकिन अब इसका लुक अलग है। हो सकता है कि आपको वह न मिले जो आपको उन जग

  1. USB-C पर स्विच कैसे करें USB-C पर स्विच कैसे करें

    USB-C तेजी से एक मानक कनेक्टिविटी पोर्ट बनता जा रहा है। USB 3.0 की गति सुधार के बाद, USB-C कनेक्शन को तेज, छोटा और उपयोग में आसान बना रहा है। एप्पल लाइटनिंग कनेक्टर की तरह जिसका उपयोग iPhone और iPad पर किया जाता है, USB-C प्रतिवर्ती है। कनेक्टर फाइल और पावर ट्रांसफर करने में भी सक्षम है, और इसे USB