【发布时间】:2021-04-11 14:45:35
【问题描述】:
我需要像这样创建一个新的二维字符串数组:
-- 创建表头和数据
String[] Header ={"Item","Description", "Qty","Unit Price","Price"};
String[][] data = {
new String[]{"Spire.Doc for .NET",".NET Word Component","1","$799.00","$799.00"},
new String[]{"Spire.XLS for .NET",".NET Excel Component","2","$799.00","$1,598.00"},
new String[]{"Spire.Office for .NET",".NET Office Component","1","$1,899.00","$1,899.00"},
new String[]{"Spire.PDF for .NET",".NET PDFComponent","2","$599.00","$1,198.00"},
};
但是代码上声明了“数据”,问题是我需要用未知长度数组[n]的数据(抱歉重复“数据”多次)声明“数据”,所以代码可以像这样工作:
String[][] data = {
new String[]{"arrayFromFunction[0].data1","arrayFromFunction[0].data2","arrayFromFunction[0].data3","arrayFromFunction[0].data4","arrayFromFunction[0].data5"},
new String[]{"arrayFromFunction[1].data1","arrayFromFunction[1].data2","arrayFromFunction[1].data3","arrayFromFunction[1].data4","arrayFromFunction[1].data5"},
...
new String[]{"arrayFromFunction[n].data1","arrayFromFunction[n].data2","arrayFromFunction[n].data3","arrayFromFunction[n].data4","arrayFromFunction[n].data5"}
};
但我不知道如何迭代 INSIDE String[][] 数据的声明或如何保存迭代器 (n) 以在数据声明中使用它。
希望我已经解释清楚,感谢您的帮助。
【问题讨论】:
-
那不是二维数组,那是锯齿状数组。包含字符串数组的数组。您发布的内容也没有任何迭代代码或任何迭代器。
-
使用循环或LINQ,最好是后者
-
这显示了一个使用
for循环迭代锯齿状数组的示例:(geeksforgeeks.org/c-sharp-jagged-arrays) -
我认为您想要实现的目标并不明确。您正在获取一个锯齿状数组 (
string[][])arrayFromFunction并尝试将其复制到一个名为data的新string[][]?另外,Header是从哪里来的? -
@connell arrayFromFunction 看起来像
[]to me