我已经按如下所示初始化了具有动态大小的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
};
我认为可能会有一些误解。
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;
}