คลาส Tuple<T1, T2> แสดงถึง 2-tuple ซึ่งเรียกว่า "Pair" (คู่) Tuple เป็นโครงสร้างข้อมูลที่มีลำดับขององค์ประกอบ
การใช้งาน
- เข้าถึงชุดข้อมูลได้ง่ายขึ้น
- จัดการชุดข้อมูลได้ง่ายขึ้น
- แสดงชุดข้อมูลเดียว
- คืนค่าหลายค่าจากเมธอด
- ส่งค่าหลายค่าไปยังเมธอด
คุณสมบัติ
- Item1 — ค่าของคอมโพเนนต์แรก
- Item2 — ค่าของคอมโพเนนต์ที่สอง
ตัวอย่างที่ 1: Tuple<string, string>
using System;
public class Demo
{
public static void Main(string[] args)
{
Tuple<string, string> tuple = new Tuple<string, string>("jack", "steve");
Console.WriteLine("Value = " + tuple.Item1);
if (tuple.Item1 == "jack")
{
Console.WriteLine("Exists: Tuple Value = " + tuple.Item1);
}
if (tuple.Item2 == "david")
{
Console.WriteLine("Exists: Tuple Value = " + tuple.Item2);
}
}
}
ผลลัพธ์
Value = jack
Exists: Tuple Value = jack
ตัวอย่างที่ 2: Tuple<int, string>
using System;
public class Demo
{
public static void Main(string[] args)
{
Tuple<int, string> tuple = new Tuple<int, string>(20, "steve");
Console.WriteLine("Value = " + tuple.Item1);
if (tuple.Item1 == 20)
{
Console.WriteLine("Exists: Tuple Value = " + tuple.Item1);
}
if (tuple.Item2 == "david")
{
Console.WriteLine("Exists: Tuple Value = " + tuple.Item2);
}
}
}
ผลลัพธ์
Value = 20
Exists: Tuple Value = 20
หมายเหตุ: ตั้งแต่ C# 7.0 ควรใช้ ValueTuple (เช่น (string, string)) ซึ่งเป็น Struct ประหยัดหน่วยความจำและมี Syntax สะดวกกว่า (tuple.Item1 → tuple.Name ได้ถ้าตั้งชื่อ)