0

假设我确实有一个数组列表说:

 Dim Set myQueue= CreateObject("System.Collections.ArrayList")
 Dim Set Dic = CreateObject("Scripting.Dictionary")

现在我执行以下操作:

    myQueue.Enqueue("jumped")
    myQueue.Enqueue("over")
    myQueue.Enqueue("the")
    myQueue.Enqueue("lazy")
    myQueue.Enqueue("dog")
    myQueue.Enqueue("Cat")

然后执行删除操作:

   myQueue .RemoveRange(2,4)

所以数组列表包含像 = (jumped,over,,,,Cat) 这样的值。

现在下面的操作会通过任何异常或在添加键期间,项目会null自动跳过值吗?

   For i=0 to myQueue.Capacity - 1

     Dic(i)=0

   next
4

1 回答 1

1

当您在 ArrayList 上调用 RemoveRange() 时,它不会留下 NULL 值,而是删除请求的元素并重新定位数组。因此,在您的示例中,您将留下jumped,over,Cat. 您还可以使用该.Count属性返回数组中的元素,这将与任何添加/删除一起保存在最新数据中。

于 2012-12-23T10:51:25.053 回答