asp中使用redim、preserve创建动态数组实例
asp中REDIM的功能是动态定义数组长度
动态数组里面的一个语句,只能出现在过程里面,可以多次使用。可以改变数组大小,和维数。
格式:
REDIM [Preserve] 数组名(下标1[下标2....])
Preserve 保留动态数组的内容(不用的话,每次执行REDIM语句,当前存储的语句会全部丢失)
例如:
复制代码 代码如下:
Dim DynArray() '定义数组DynArray()为动态数组
REDIM Preserve DynArray(20)'为该数组分配元数个数
这样对编程中一些动态的改变数组是非常重要的,而且经常能用到,处理到,这REDIM深入了解第二电脑认为对自己的编程的提高很有帮助。
下面举一些ASP数组的例子,当然不全是动态数组
在ASP编程中使用数组:
数组的定义:
复制代码 代码如下:
Dim MyArray
MyArray = Array(1‚5‚123‚12‚98)
可扩展数组:
复制代码 代码如下:
Dim MyArray()
for i = 0 to 10
ReDim Preserve MyArray(i)
MyArray(i)=i
next
将一个字符串分割并返回分割结果的数组:
复制代码 代码如下:
Dim MyArray
MyArray = Split(tempcnt‚chr(13)&chr(10))
For I = Lbound(MyArray) to Ubound(MyArray)
Response.Write MyArray(I) & "<br>"
Next
数组排序函数:
复制代码 代码如下:
function..Sort(ary)
KeepChecking = TRUE
Do Until KeepChecking = FALSE
KeepChecking = FALSE
For I = 0 to UBound(ary)
If I = UBound(ary) Then Exit For
If ary(I) > ary(I+1) Then
FirstValue = ary(I)
SecondValue = ary(I+1)
ary(I) = SecondValue
ary(I+1) = FirstValue
KeepChecking = TRUE
End If
Next
Loop
Sort = ary
End function
数组排序函数应用例子:
复制代码 代码如下:
Dim MyArray
MyArray = Array(1‚5‚123‚12‚98)
MyArray = Sort(MyArray)
For I = Lbound(MyArray) to Ubound(MyArray)
Response.Write MyArray(I) & "<br>"
Next
在Application和Session中使用数组:
复制代码 代码如下:
Application.Lock
Application("StoredArray") = MyArray
Application.Unlock
LocalArray = Application("StoredArray")
覆盖Application中的数组:
复制代码 代码如下:
Application.Lock
Application("StoredArray") = LocalArray
Application.Unlock
Session使用方法与Application相同,从数据库中把数据导入数组中:
复制代码 代码如下:
Dim MyArray
'取出全部记录
MyArray = RS.GetRows
'取出前10项记录
MyArray = RS.GetRows(10)
For row = 0 To UBound(MyArray‚ 2)
For col = 0 To UBound(MyArray‚ 1)
Response.Write (col‚ row) & "<br>"
Next
Next
通过以上的例子可以加深我们对数组的理解,在实际运用中加以灵活运用。