我得到了元组:
:gen_tcp.listen(port, [packet: :line, buffer: 1024])
我尝试使用 private Tuple<double, double, int>[] circle;
方法添加和元素。但是不存在。
如何在元组数组中添加元素?
答案 0 :(得分:3)
忘记元组一秒钟。你如何填写任何数组?
private int[] _numbers; // now what?
答案是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);
如果你是从另一种语言进来并期望可以添加一个可变长度的数组,你要找的是.NET的List<T>
类,它可以初始化为空,并且有成员添加和删除。
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));
答案 1 :(得分:1)
你不能将元素添加到元组数组(或者其他任何东西的数组),但你有很多选项来创建元组数组:
List
,向其中添加项目,并在完成向其添加元素后将其转换为数组。第三种选择是最灵活的。这是它的外观:
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();