如何在c#中将新元素添加到2d字符串数组? 防爆。我有一个数组
string [,] x = new string[,]{{"1","a"},{"2","b"}};
现在我想增加长度数组并将“3”和“c”添加到顶部。
答案 0 :(得分:1)
数组在长度方面是不可变的。一旦定义,就无法将对象添加到它们中。
您需要一个可扩展的集合,例如自定义类的List
。
public class FooBar
{
public string Foo { get; set; }
public string Bar { get; set; }
}
并列出
var fooBars = new List<FooBar>
{
new FooBar() {Foo = "1", Bar = "a"},
new FooBar() {Foo = "2", Bar = "b"},
};
fooBars.Add(new FooBar() {Foo = "3", Bar = "c"});
此外,您现在可以将此集合转换为数组
var myArray = fooBars.ToArray();
答案 1 :(得分:0)
您无法在C#中调整数组大小。 但是有两种解决方案适合您:
使用List<T>
https://msdn.microsoft.com/en-gb/library/6sh2ey19(v=vs.110).aspx
每次添加或删除操作后都会重新创建数组(不好的方法)。
P.S。您的工作似乎需要Dictionary<K,V>
(使用unic 1st字段,称为Key)。
https://msdn.microsoft.com/en-gb/library/xfhwa508(v=vs.110).aspx
var x = new List<List<string>>();
x.Add(new List<string>()
{
"1", "a"
});
// so on.