在vb.net中,如何删除二维数组中的行?
答案 0 :(得分:1)
如果你需要从数组中删除项目,你可能不应该使用数组,但应该使用某种类型的列表(List(Of List(Of String))
或其他东西。
如果你想坚持使用数组,那么在this页面上描述了两种不同的解决方案,一种是手动缓慢移动,另一种是复制存储器的速度更快。样本用于一维数组,但应该很容易适应。
答案 1 :(得分:0)
如果它是您要删除的最后一行,并且您使用第二个维来表示行,则可以将ReDim与保留选项一起使用,如下所示:
Dim myArray(2,1)
ReDim Preserve myArray(2, 2)
警告:我建议您在使用上述示例之前查看本文:The Redim Preserve Performance Trap
如果您需要删除中间的行,则必须先将所有行向下移动,然后截断该数组的最后一个维度。
这需要将您的行概念转移到第二维可能会使它比它的价值更麻烦。如果你需要随意删除这样的项目,你可能会首先使用错误的类型。传统阵列(尤其是多维阵列)最适合用于固定大小的数据集。