在C#中,元组(Tuple) 是一种轻量级的数据结构,用于将多个值组合成一个单一的对象。元组非常适合在不需要定义新类或结构体的情况下,临时存储和传递多个相关的值。
C# 中的元组有两种形式:
-
传统元组(
System.Tuple
):C# 4.0 引入,元素通过Item1
,Item2
等属性访问。 -
值元组(
System.ValueTuple
):C# 7.0 引入,性能更高,支持更灵活的语法。
一、传统元组(System.Tuple)
1. 定义和使用
传统元组是引用类型,定义时需要指定每个元素的类型。
// 定义一个包含两个元素(int 和 string)的元组 Tuple<int, string> person = new Tuple<int, string>(1, "Alice"); // 访问元组中的元素 Console.WriteLine($"ID: {person.Item1}, Name: {person.Item2}"); // 输出:ID: 1, Name: Alice
2. 支持的最大元素数量
传统元组最多支持 8 个元素。如果需要更多元素,可以使用嵌套元组。
// 定义一个包含 8 个元素的元组 var data = new Tuple<int, int, int, int, int, int, int, Tuple<string>>( 1, 2, 3, 4, 5, 6, 7, new Tuple<string>("Eight") ); // 访问第 8 个元素 C