Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在C#中填充元组?_C#_C# 4.0 - Fatal编程技术网

如何在C#中填充元组?

如何在C#中填充元组?,c#,c#-4.0,C#,C# 4.0,我得到的元组是: private Tuple<double, double, int>[] circle; private Tuple[]圈; 我使用add()方法来添加和元素。但这是不存在的 如何在元组数组中添加元素?暂时忘记元组。如何填充任何数组 答案是数组(在C#中)的大小是不可变的——它们必须在初始化期间分配,这就是它们的大小。初始化后,可以通过索引将值分配给数组成员: _numbers = new int[5]; _numbers[0] = 5; circle = n

我得到的元组是:

 private Tuple<double, double, int>[] circle;
private Tuple[]圈;
我使用
add()
方法来添加和元素。但这是不存在的


如何在元组数组中添加元素?

暂时忘记元组。如何填充任何数组

答案是数组(在C#中)的大小是不可变的——它们必须在初始化期间分配,这就是它们的大小。初始化后,可以通过索引将值分配给数组成员:

_numbers = new int[5];
_numbers[0] = 5;
circle = new Tuple<double,double,int>[5];
circle[0] = new Tuple<double,double,int>(1.0, 2.0, 3);
_numbers=新整数[5];
_数字[0]=5;
圆圈=新元组[5];
圈[0]=新元组(1.0,2.0,3);
如果您来自不同的语言,并且希望可以添加一个可变长度的数组,那么您需要的是.NET的
列表
类,该类可以初始化为空,并且可以添加和删除成员

private List<Tuple<double,double,int>> circle;
circle = new List<Tuple<double,double,int>>();
circle.Add(new Tuple<double,double,int>(3.0, 2.0, 1));
私人列表圈;
圆圈=新列表();
添加(新元组(3.0,2.0,1));

暂时忘记元组。如何填充任何数组

答案是数组(在C#中)的大小是不可变的——它们必须在初始化期间分配,这就是它们的大小。初始化后,可以通过索引将值分配给数组成员:

_numbers = new int[5];
_numbers[0] = 5;
circle = new Tuple<double,double,int>[5];
circle[0] = new Tuple<double,double,int>(1.0, 2.0, 3);
_numbers=新整数[5];
_数字[0]=5;
圆圈=新元组[5];
圈[0]=新元组(1.0,2.0,3);
如果您来自不同的语言,并且希望可以添加一个可变长度的数组,那么您需要的是.NET的
列表
类,该类可以初始化为空,并且可以添加和删除成员

private List<Tuple<double,double,int>> circle;
circle = new List<Tuple<double,double,int>>();
circle.Add(new Tuple<double,double,int>(3.0, 2.0, 1));
私人列表圈;
圆圈=新列表();
添加(新元组(3.0,2.0,1));

您不能将元素添加到元组数组(或者添加到其他任何元素的数组),但您有许多用于创建元组数组的选项:

  • 您可以创建一个固定大小的数组,然后稍后填充它,或者
  • 您可以创建一个固定大小的数组,并立即填充它,或者
  • 您可以创建一个
    列表
    ,向其中添加项目,并在向其中添加元素后将其转换为数组
第三种选择是最灵活的。这就是它的样子:

var list = new List<Tuple<double,double,int>>();
list.Add(Tuple.Create(1.5, 1.7, 9));
list.Add(Tuple.Create(2.6, 3.8, 11));
circle = list.ToArray();
var list=newlist();
list.Add(Tuple.Create(1.5,1.7,9));
list.Add(Tuple.Create(2.6,3.8,11));
圆圈=list.ToArray();

您不能将元素添加到元组数组(或者添加到其他任何元素的数组),但您有许多用于创建元组数组的选项:

  • 您可以创建一个固定大小的数组,然后稍后填充它,或者
  • 您可以创建一个固定大小的数组,并立即填充它,或者
  • 您可以创建一个
    列表
    ,向其中添加项目,并在向其中添加元素后将其转换为数组
第三种选择是最灵活的。这就是它的样子:

var list = new List<Tuple<double,double,int>>();
list.Add(Tuple.Create(1.5, 1.7, 9));
list.Add(Tuple.Create(2.6, 3.8, 11));
circle = list.ToArray();
var list=newlist();
list.Add(Tuple.Create(1.5,1.7,9));
list.Add(Tuple.Create(2.6,3.8,11));
圆圈=list.ToArray();

So的可能重复,你建议我使用元组列表吗?因为我不知道你在写什么以及你的需求是什么,不,我不建议任何东西。那么如何按索引更新列表中的值?例如,圆[索引][,3]?NET中只有元组中的最后一个值是不可变的。一旦创建,它们就无法更新。这里似乎不需要元组。为什么不创建一个包含三个字段的类呢?也许吧,但我可以用内部的元组替换列表元素吗?我的意思是,如果存在索引为0的列表元素,我将添加另一个索引为0的元素。它会取代旧的值吗?那么,你建议我使用元组列表吗?因为我不知道你在写什么,也不知道你的需要是什么,不,我不推荐任何东西。那么如何通过索引更新列表中的值呢?例如,圆[索引][,3]?NET中只有元组中的最后一个值是不可变的。一旦创建,它们就无法更新。这里似乎不需要元组。为什么不创建一个包含三个字段的类呢?也许吧,但我可以用内部的元组替换列表元素吗?我的意思是,如果存在索引为0的列表元素,我将添加另一个索引为0的元素。它会替换旧值吗?谢谢,所以在第三个选项中不必定义列表的默认大小?@OPV Correct,第三个选项允许您推迟指定数组的大小,直到其所有元素都放置在列表中。谢谢,所以在第三个选项中不必定义列表的默认大小?@OPV Correct,第三个选项允许您推迟指定数组的大小,直到其所有元素都放置在列表中。