背景:我正在使用来自不同库的两种方法。一个使用System.Tuple<double,double>
,另一个使用(double,double)
作为参数。我发现自己在不做额外工作将System.Tuple
转换为(,)
的情况下无法使用这两种方法。
System.Tuple<t1,t2>
和(t1,t2)
有什么区别?
答案 0 :(得分:4)
(t1,t2)
是ValueTuple<,>
而不是Tuple<,>
因此执行以下操作将有效:
ValueTuple<int, int> hey = (1, 2);
但是,这将给您键入错误
Tuple<int, int> hey = (1, 2);
有关ValueTuple
和Tuple
之间差异的更多信息,请参见此问题/答案What's the difference between System.ValueTuple and System.Tuple?
答案 1 :(得分:0)
元组表示一组数据。您可以通过单个Tuple参数将多个值传递给方法。您可以使用Tuple返回数据集,而无需使用out参数。您可以使用Tuple从一个方法传递或返回最多8个参数。