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

C# में 1-टपल या सिंगलटन टपल कैसे बनाएं

विवरण

Tuple<T1> क्लास एक 1-टपल (सिंगलटन) को दर्शाता है। एक टपल एक डेटा संरचना है जिसमें तत्वों का एक क्रम होता है। C# 7.0+ में, टपल लिटरल्स (value) या ValueTuple<T1> का उपयोग करके अधिक सरल सिंटैक्स उपलब्ध है, लेकिन Tuple<T1> क्लास अभी भी उपयोगी है जब इम्युटेबल रेफरेंस टाइप सेमेंटिक्स की आवश्यकता हो।

उदाहरण 1: इंटीजर सिंगलटन टपल

using System;

public class Demo {
    public static void Main(string[] args) {
        Tuple tuple = new Tuple(100);
        Console.WriteLine("मान = " + tuple.Item1);
        
        if (tuple.Item1 == 150) {
            Console.WriteLine(tuple.Item1);
        }
        if (tuple.Item1 == 100) {
            Console.WriteLine(tuple.Item1);
        }
    }
}

आउटपुट

मान = 100
100

उदाहरण 2: स्ट्रिंग सिंगलटन टपल

using System;

public class Demo {
    public static void Main(string[] args) {
        Tuple tuple = new Tuple("amit");
        Console.WriteLine("मान = " + tuple.Item1);
        
        if (tuple.Item1 == "tom") {
            Console.WriteLine(tuple.Item1);
        }
        if (tuple.Item1 == "amit") {
            Console.WriteLine("मौजूद: टपल मान = " + tuple.Item1);
        }
    }
}

आउटपुट

मान = amit
मौजूद: टपल मान = amit

आधुनिक विकल्प: ValueTuple (C# 7.0+)

// टपल लिटरल सिंटैक्स
var tuple1 = (100);        // वास्तव में सिर्फ int, टपल नहीं
var tuple2 = (100,);       // 1-टपल (अंत में कॉमा आवश्यक)
var tuple3 = (Value: 100); // नामित सदस्य

// ValueTuple - म्यूटेबल, वैल्यू टाइप
ValueTuple vt = new ValueTuple(100);
Console.WriteLine(vt.Item1); // 100

// डीस्ट्रक्चरिंग
var (value) = tuple2;
Console.WriteLine(value); // 100

Tuple vs ValueTuple

विशेषताTuple<T>ValueTuple<T>
प्रकाररेफरेंस टाइप (क्लास)वैल्यू टाइप (स्ट्रक्चर)
म्यूटेबिलिटीइम्युटेबलम्यूटेबल
सिंटैक्सnew Tuple<T>(val)(val,) या new ValueTuple<T>(val)
प्रदर्शनहीप आवंटनस्टैक आवंटन, तेज़
नामित सदस्यनहींहां (C# 7.0+)

कब उपयोग करें

  • Tuple<T>: जब इम्युटेबिलिटी, रेफरेंस सेमेंटिक्स, या लिगेसी API संगतता आवश्यक हो।
  • ValueTuple<T>: सामान्य उपयोग के लिए, बेहतर प्रदर्शन और सिंटैक्स के साथ।
  • एकल मान के लिए, अक्सर एक साधारण वेरिएबल या Nullable<T> पर्याप्त होता है।
  1. - नॉन-लिटरल पायथन टुपल कैसे बनाएं?

    आप पहले एक लिस्ट बना सकते हैं फिर उस सिंगल वैल्यू को बदलें जिसे आप बदलना चाहते हैं, फिर अंत में यदि आप नॉन-लिटरल पायथन टुपल बनाना चाहते हैं तो उसे टुपल में कन्वर्ट करें। उदाहरण के लिए: def create_non_literal_tuple(a, b, c): x = [1] * a x[c] = b return tuple(x) create_non_literal_tuple(

  1. - Python में खाली टपल कैसे बनाएं?

    आप असाइनमेंट स्टेटमेंट में पैरेंथेसिस में कोई एलिमेंट न देकर खाली टपल ऑब्जेक्ट बना सकते हैं। खाली टपल ऑब्जेक्ट `tuple()` बिल्ट-इन फंक्शन से बिना किसी तर्क के भी बनाया जाता है। >>> T1 = () >>> T1 () >>> T1 = tuple() >>> T1 ()

  1. - Python में सिंगलटन क्लास कैसे बनाएं?

    सिंगलटन पैटर्न क्लास के इंस्टेंस की संख्या को एक तक सीमित करने की रणनीति प्रदान करता है। इस प्रकार वही ऑब्जेक्ट कोड के विभिन्न हिस्सों द्वारा हमेशा शेयर किया जाता है। सिंगलटन को ग्लोबल वेरिएबल की तुलना में अधिक सुंदर समाधान माना जा सकता है क्योंकि वास्तविक डेटा सिंगलटन क्लास इंटरफेस के पीछे छिपा हो