元组最多可以使用几个变量



我听说最多可以使用7个变量,但我要求更多。我想知道可以使用的变量的最大数量。

它实际上是无限的。此处提供了具有七个以上属性的Tuple的文档。第八个属性本身可以是Tuple。它的第八个属性也可以是Tuple,依此类推,直到系统空间耗尽。例如,这个代码:

var data =
new Tuple<int, int, int, int, int, int, int, Tuple<int, int, int, int, int, int, int, Tuple<int, int>>>(
1, 2, 3, 4, 5, 6, 7,
new Tuple<int, int, int, int, int, int, int, Tuple<int, int>>(
1, 2, 3, 4, 5, 6, 7,
Tuple.Create(1, 2)));
Console.WriteLine(data.ToString());

产生以下输出:

(1,2,3,4,5,6,7,1,2,3,4,5,7,1,2(

值得注意的是,此代码:

var data = Tuple.Create(
1, 2, 3, 4, 5, 6, 7,
Tuple.Create(
1, 2, 3, 4, 5, 6, 7,
Tuple.Create(1, 2)));
Console.WriteLine(data.ToString());

产生的输出略有不同:

(1,2,3,4,5,6,7,(1,2,3,5,6,7,1,2((

文档确实这样说:

要创建一个包含九个或九个以上组件的n元组,必须调用元组<T1、T2、T3、T4、T5、T6、T7、TRest>构造函数。Tuple类的静态工厂方法不支持创建包含八个以上组件的Tuple对象。

元组是无限的,请注意这个例子:

var t1 = ("a", "b", "c", "d", "e", "f", "g","h","i");
Console.WriteLine(t1);
Console.ReadKey();

现在我们可以说元组是无限的,因为它们不仅需要7个变量,而且具有更大的容量

var date = =Tuple.Create(
1,2,3,4,5,6,7,
tuple.creat(
1,2,3,4,5,6,7
tuple.create(1,2)));
console.writeline(data.topstring());

最新更新