我解析了一个由特定列和行组成的csv文件,并将该信息放入一个String[] array1D中。例如,如果我打印array1D[0] (在索引为0的文件列上是具有每行编号的列),它将打印出所有行号。对于其余的专栏,这是相同的交易。如何将此一维数组的内容转换为多维数组?我尝试过使用嵌套的for循环,但我的实现有缺陷,或者它是无法用for循环完成的。
编辑:对于我正在讨论的csv文件,索引0处的列是对每行进行编号的列。如果我打印出String[0] array1D,它就会打印出来
1
2
3
4
5
...编辑2:事实上,我找到了一个解决问题的办法。我需要把我的数组放到一个二维数组中,这样我就可以做一些特定的功能,比如对某一列中的所有数字求平均。但是,我可以使用if语句,并将我想要执行任何函数的列放入新的arraylist中。然后,我可以将该函数应用于该数组列表。
发布于 2016-04-26 05:42:43
我会向你解释这个概念。鉴于我没有确切的信息,我不能给你确切的公式。
首先,您必须确保每列的列# of rows在所有列中都是相同的。为了便于讨论,我们假设您有10行和4 columns。总而言之,您在单个数组中有40项。
现在,这里是棘手的部分。对于每个索引,index%columnCount == 0是二维数组中的新行。因此,在这种情况下,例如,0/10 == 0是索引0处的数组。10%10 == 0将是索引1处的新行,最后30%10 == 0将是2D数组中的3行。
我希望你已经明白了。如果你需要更多的解释,请告诉我
发布于 2016-04-26 05:43:59
如果您知道一行中有多少项,那么您可以将一维数组分解为二维数组。一旦有了标识符,就可以从那里将数组分成多个单独的行
https://stackoverflow.com/questions/36851486
复制相似问题