如何将新元素添加到现有的2d字符串数组?

时间:2017-07-06 15:28:06

标签: c#

如何在c#中将新元素添加到2d字符串数组? 防爆。我有一个数组

string [,] x = new string[,]{{"1","a"},{"2","b"}}; 

现在我想增加长度数组并将“3”和“c”添加到顶部。

2 个答案:

答案 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#中调整数组大小。 但是有两种解决方案适合您:

  1. 使用List<T> https://msdn.microsoft.com/en-gb/library/6sh2ey19(v=vs.110).aspx

  2. 每次添加或删除操作后都会重新创建数组(不好的方法)。

  3. 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.