Tuple ক্লাসের GetType() মেথড টাপলের রানটাইম টাইপ ইনফরমেশন রিটার্ন করে। নেস্টেড টাপলের ক্ষেত্রে টাইপ নাম জটিল হয় (যেমন System.Tuple`3[...])।
উদাহরণ ১: নেস্টেড টাপল তুলনা
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]]
উদাহরণ ২: সিম্পল টাপল
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]
নোট: C# 7.0+ এ ValueTuple (যেমন (int, string)) ব্যবহার করা বোটার কারণ এটি লাইটওয়েট এবং নামযুক্ত ফিল্ড সাপোর্ট করে।