vb.net删除二维数组中的一行

时间:2010-06-22 20:39:28

标签: vb.net arrays multidimensional-array

在vb.net中,如何删除二维数组中的行?

2 个答案:

答案 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

如果您需要删除中间的行,则必须先将所有行向下移动,然后截断该数组的最后一个维度。

这需要将您的行概念转移到第二维可能会使它比它的价值更麻烦。如果你需要随意删除这样的项目,你可能会首先使用错误的类型。传统阵列(尤其是多维阵列)最适合用于固定大小的数据集。