C# में Tuple के तत्व का प्रकार प्राप्त करने के लिए, हम GetType() मेथड का उपयोग करते हैं। यह मेथड टुपल ऑब्जेक्ट के रनटाइम प्रकार को दर्शाने वाला Type ऑब्जेक्ट लौटाता है। टुपल्स एक निश्चित आकार के, अपरिवर्तनीय डेटा संरचनाएं हैं जो System नेमस्पेस में परिभाषित हैं।
उदाहरण 1: नेस्टेड टुपल्स के प्रकार की जांच
using System;
public class Demo
{
public static void Main(String[] args)
{
var tuple1 = Tuple.Create(150, 1500, Tuple.Create(50, 100));
var tuple2 = Tuple.Create(150, 1500, Tuple.Create(100, 200));
Console.WriteLine("क्या Tuple1, Tuple2 के बराबर है? = " + tuple1.Equals(tuple2));
Console.WriteLine("Tuple1 का हैशकोड = " + tuple1.GetHashCode());
Console.WriteLine("Tuple1 का प्रकार = " + tuple1.GetType());
Console.WriteLine("Tuple2 का हैशकोड = " + tuple2.GetHashCode());
Console.WriteLine("Tuple2 का प्रकार = " + tuple2.GetType());
}
}
आउटपुट
क्या Tuple1, Tuple2 के बराबर है? = False Tuple1 का हैशकोड = 188892 Tuple1 का प्रकार = System.Tuple`3[System.Int32,System.Int32,System.Tuple`2[System.Int32,System.Int32]] Tuple2 का हैशकोड = 191462 Tuple2 का प्रकार = System.Tuple`3[System.Int32,System.Int32,System.Tuple`2[System.Int32,System.Int32]]
उदाहरण 2: सरल 2-टुपल के प्रकार
using System;
public class Demo
{
public static void Main(String[] args)
{
var tuple1 = Tuple.Create(10, 20);
var tuple2 = Tuple.Create(30, 40);
Console.WriteLine("क्या Tuple1, Tuple2 के बराबर है? = " + tuple1.Equals(tuple2));
Console.WriteLine("Tuple1 का हैशकोड = " + tuple1.GetHashCode());
Console.WriteLine("Tuple1 का प्रकार = " + tuple1.GetType());
Console.WriteLine("Tuple2 का हैशकोड = " + tuple2.GetHashCode());
Console.WriteLine("Tuple2 का प्रकार = " + tuple2.GetType());
}
}
आउटपुट
क्या Tuple1, Tuple2 के बराबर है? = False Tuple1 का हैशकोड = 350 Tuple1 का प्रकार = System.Tuple`2[System.Int32,System.Int32] Tuple2 का हैशकोड = 1014 Tuple2 का प्रकार = System.Tuple`2[System.Int32,System.Int32]
मुख्य बिंदु:
GetType()टुपल के पूर्ण जेनेरिक प्रकार हस्ताक्षर को दर्शाता है- नेस्टेड टुपल्स का प्रकार उनके नेस्टिंग को दर्शाता है (उदाहरण:
Tuple`3[..., Tuple`2[...]]) - समान आकार और टाइप पैरामीटर्स वाले टुपल्स का समान रनटाइम प्रकार होता है
Equals()मान समानता की जांच करता है (सभी तत्व समान होने चाहिए)- C# 7.0+ में वैल्यू टुपल्स (
ValueTuple) उपलब्ध हैं जिनका सिंटैक्स(int, int)है