[2D对象数组c锐利的动态值分配

问题描述 投票:0回答:1

我已经按如下所示初始化了具有动态大小的2d对象数组;

        header.Value2 = new object[,] {
            { "col1", "col1", "col1", "col1", "col1", "col1", "col1", "col1", "col1" }
    };

有什么方法可以使用变量来动态设置内部对象{“ col1”,“” .......},如下所示:

Object newobj = { "col1", "col1", "col1", "col1", "col1", "col1", "col1", "col1", "col1" };

header.Value2 = new object[,] {
            newobj
    };
c# arrays object definition
1个回答
0
投票

我认为可能会有一些误解。

header.Value2 = new object[,] {
        { "col1", "col1", "col1", "col1", "col1", "col1", "col1", "col1", "col1" }
};

这将声明一个固定大小的2D数组,其中包含一列9行。没有“内部对象”。您可能会想到jagged arrays,即object[][],因为每行都有一个单独的对象。

如果要将一维数组转换为二维数组,只需编写一个方法即可:

    public static T[,] To2DColumn<T>(T[] source)
    {
        var result = new T[1, source.Length];
        for (int i = 0; i < source.Length; i++)
        {
            result[0, i] = source[i];
        }

        return result;
    }
© www.soinside.com 2019 - 2024. All rights reserved.