0

ArrayList我编写了下面的代码来根据一维数组中某些元素的匹配从对象中删除一些元素。但是得到一个关于线的错误。但我知道的是在找到匹配和不匹配时返回索引。那么为什么会出现错误呢?Non-negetive number requiredArrayListTaskDetails.RemoveRange RemovePosition, 4IndexOf()0 - based-1

代码:

For IndexSearch = Lbound(VMHArray) To Ubound(VMHArray)
    Do Until ArrayListTaskDetails.IndexOf(VMHArray(IndexSearch), 0) <> -1
        RemovePosition = ArrayListTaskDetails.IndexOf(VMHArray(IndexSearch), 0)
        ArrayListTaskDetails.RemoveRange RemovePosition, 4
    Loop
Next
4

1 回答 1

1

好的,我评论中的“没有意义”部分是错误的;我误读了这个例子。

这是发生的事情:Do Until X表示评估 X,如果结果为false,则执行循环体。因此,IndexOf 显然返回 -1,“Until”条件评估为假,循环体执行,RemovePosition 等于 -1。这解释了错误。

于 2012-12-28T07:59:38.880 回答