Tuple สามารถใช้เพื่อคืนค่าหลายค่าจากวิธีการใน C # ช่วยให้เราสามารถจัดเก็บชุดข้อมูลที่ประกอบด้วยค่าต่างๆ ที่อาจเกี่ยวข้องหรือไม่เกี่ยวข้องกันหรือไม่ก็ได้ Tuple ล่าสุดที่เรียกว่า ValueTuple คือ C# 7.0 (.NET Framework 4.7)
ValueTuples มีทั้งประสิทธิภาพและอ้างอิงได้โดยใช้ชื่อที่โปรแกรมเมอร์เลือก ValueTuple จัดเตรียมกลไกที่มีน้ำหนักเบาสำหรับการคืนค่าหลายค่าจากวิธีการที่มีอยู่ ValueTuples จะพร้อมใช้งานใน แพ็คเกจ System.ValueTupleNuGet .
สาธารณะ (int, string, string) GetPerson() { }
ตัวอย่างที่ 1
using System; namespace DemoApplication{ class Program{ public static void Main(){ var fruits = GetFruits(); Console.WriteLine($"Fruit Id: {fruits.Item1}, Name: {fruits.Item2}, Size: {fruits.Item3}"); Console.ReadLine(); } static (int, string, string) GetFruits(){ return (Id: 1, FruitName: "Apple", Size: "Big"); } } }
ผลลัพธ์
ผลลัพธ์ของโค้ดด้านบนคือ
Fruit Id: 1, Name: Apple, Size: Big
ในตัวอย่างข้างต้น เราจะเห็นว่าเมธอด GetFruits() ส่งคืนค่าหลายค่า (int, string, string) ค่าของ tuples เข้าถึงได้โดยใช้ fruits.Item1, fruits.Item2, fruits.Item3.
นอกจากนี้เรายังสามารถดึงข้อมูลสมาชิกแต่ละคนได้โดยใช้การถอดรหัส
(int FruitId, สตริง FruitName, สตริง FruitSize) =GetFruits();
ตัวอย่างที่ 2
using System; namespace DemoApplication{ class Program{ public static void Main(){ (int FruitId, string FruitName, string FruitSize) = GetFruits(); Console.WriteLine($"Fruit Id: {FruitId}, Name: {FruitName}, Size: {FruitSize}"); Console.ReadLine(); } static (int, string, string) GetFruits(){ return (Id: 1, FruitName: "Apple", Size: "Big"); } } }
ผลลัพธ์
ผลลัพธ์ของโค้ดด้านบนคือ
Fruit Id: 1, Name: Apple, Size: Big