VBScript对象System.Collections.ArraylIst的详解
对象
System.Collections.ArrayList
主要是用来创建动态数组的
一、创建动态数组
dim DynamicArray: Set DynamicArray=CreateObject("System.Collections.ArrayList")
VBS中将多条语句合并写在一行,可以使用‘
:
’号连接,在上面的语句中,表示的是将变量的声明和对象的创建的代码放在一行,为了防止产生冲突,减少代码量,使代码看起来更简洁,所以要使用冒号来连接
二、属性
- Count
动态数组名.Count
表示的是动态数组中元素的个数 - Capacity
动态数组名.Capacity
表示的是动态数组中元素的容量
三、方法
方法 | 介绍 | 使用 |
---|---|---|
Item | 根据数组的索引输出对应的元素的值 | 动态数组名.Item(索引) |
Add | 向动态数组中添加元素 | 动态数组名.Add(元素) |
Remove | 通过元素的值来删除动态数组中对应的元素 | 动态数组名.Remove(元素) |
removeAt | 通过索引来删除动态数组中对应的元素 | 动态数组名.removeAt(索引) |
Insert | 向动态数组中的指定的索引位置插入某个元素 | 动态数组名.Insert(索引,元素) |
Sort | 对动态数组中的元素进行排序 | 动态数组名.Sort |
Clear | 清空动态数组中的元素 | 动态数组名.Clear |
四、示例代码
Option Explicit
' 创建一个动态数组arr
dim arr: Set arr=CreateObject("System.Collections.ArrayList")
' 为动态数组arr添加元素
arr.Add "Elements1"
arr.Add "Elements2"
arr.Add "Elements3"
' 使用动态提供的属性Count和Capacity分别打印出数组的元素个数和总容量
msgbox "动态数组arr的元素个数为:"+arr.Count
msgbox "动态数组arr的总容量为:"&arr.Capacity
' 创建一个子进程用来遍历数组中的元素
sub printarr
dim temp,arrlist
for temp=0 to arr.Count-1
arrlist=arrlist&arr.Item(temp)&vbCrlf
next
msgbox arrlist
end sub
printarr
' 对数组中的元素进行排序
arr.Sort
printarr
' 删除数组中的某个元素
arr.Remove "Elements1"
rem arr.removeAt(0)
printarr
arr.Clear
printarr
五、其他知识
在上述示例代码中的动态数组添加元素的方法可以使用类似于链式编程的方法来进行编写,如下所示
Set arr=CreateObject("System.Collections.ArrayList")
With arr
.Add "Elements1"
.Add "Elements2"
.Add "Elements3"
.Add "Elements4"
End With
...
可以用With...End With
语句来进行链式同类方法编写的链式效应