迭代字典键值以填充交错数组

本文关键字:数组 填充 字典 键值 迭代 | 更新日期: 2023-09-27 18:30:46

我想转换下面的代码

string[][] mergeData = new string[][] {
                          new string[] { "phone", "date"},
                          new string[] { "0421 3359 129", DateTime.Now.ToString() } };

       Dictionary<string, string> list = new Dictionary<string, string>();
        list.Add("phone", "0421 3359 129");
        list.Add("date", DateTime.Now.ToString());

        string[][] mergeData = new string[2][];
        int i = 0;
        foreach(KeyValuePair<string, string> pair in list)
        {
            mergeData[0][i] = pair.Key;
            mergeData[1][i] = pair.Value;
        i++;
        }  

但是我收到错误消息

object reference not set to an instance of an object

我怀疑这与我的锯齿状数组初始化有关。我不知道如何正确启动交错数组。我必须使用锯齿数组。

请帮忙。谢谢。

迭代字典键值以填充交错数组

您收到此消息是因为交错数组的构造函数中未设置两个单独的数组。以下是您可以执行的操作:

string[][] mergeData = new[] {
    new string[list.Count]
,   new string[list.Count]
};

这将创建一个包含两个元素的数组,每个元素都包含 list.Count 个类型为 string 的元素。