Массив двумерных объектов c резкая динамика c распределение значений - PullRequest
0 голосов
/ 04 мая 2020

Я инициализировал массив двумерных объектов с динамическим размером c следующим образом:

        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
    };

1 Ответ

0 голосов
/ 04 мая 2020

Я думаю, что могут быть некоторые заблуждения.

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

это объявляет двумерный массив фиксированного размера с одним столбцом и 9 строками. Там нет "внутреннего объекта". Возможно, вы думаете о зубчатых массивах , т. Е. 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;
    }
...