dim Sums(20)為Double‘21元素。
若要創建公共數組,請直接用Public替換Dim。
整數形式的公共計數器(14)
雙精度公共和(20)
在此過程中,同壹語句使用了Dim:
將計數器(14)顯示為整數
雙精度點心(20)
第壹個聲明創建了壹個包含15個元素的數組,索引號範圍為0到14。第二個聲明創建了壹個包含21個元素的數組,索引號範圍為0到20。默認下限為0。
若要指定下限,請使用關鍵字to(Long數據類型)顯式提供下限:
將計數器(1到15)顯示為整數
字符串形式的點心和(100到120)
包含其他數組的數組。
私有子命令1_Click()
“Dim intX As Integer”聲明了壹個計數器變量。
聲明並放置壹個整數數組。
dim countersA(5)為整數
對於intX = 0至4
countersA(intX)= 5
下壹個intX
聲明並放置壹個字符串數組。
將countersB(5)設為字符串
對於intX = 0至4
countersB(intX)=“hello“
下壹個intX
dim arrX(2)As Variant‘聲明了壹個具有兩個成員的新數組。
arrx(1)= counterpa()‘將其他陣列遷移到陣列。
arrX(2)= countersB()
MsgBox arrX(1)(2)‘顯示每個數組的成員。
MsgBox arrX(2)(3)
末端接頭
多維數組
有時有必要跟蹤記錄數組中的相關信息。例如,為了跟蹤和記錄計算機屏幕上的每個像素,有必要參考其X和Y坐標。此時,您應該使用多維數組來存儲值。
您可以用Visual Basic聲明多維數組。例如,以下語句在過程中聲明了壹個10 × 10的二維數組。
雙精度靜態矩陣(9,9)
雙精度靜態矩陣(1到10,1到10)
dim multi d(3,1到10,1到15)
該語句建立了壹個大小為4 × 10 × 15的三維數組。元素的總數是三維的乘積,為600。
請註意,當增加數組的維度時,數組占用的存儲空間將大大增加,因此請謹慎使用多維數組。使用變體數組時要更加小心,因為它們需要更多的存儲空間。
用循環操作數組。
I為整數,J為整數
雙精度靜態矩陣(1到10,1到10)
對於I = 1至10
對於J = 1至10
matrix a(I,J)= I * 10+J
下壹個J
接下來我
要創建動態數組,請按照下列步驟操作:
使用Public語句聲明數組(如果希望數組是公共的),或者在模塊級使用Dim語句聲明數組(如果希望數組是模塊級的),或者在過程中使用Static或Dim語句聲明數組(如果希望數組是本地的)。將壹個空維度表附加到該數組,從而將該數組聲明為動態數組。
Dim DynArray()
使用ReDim語句分配元素的實際數量。ReDim DynArray(X+1)
ReDim語句只能出現在過程中。與Dim語句和Static語句不同,ReDim語句是壹個可執行語句,因為有了這個語句,應用程序在運行時執行壹個操作。
ReDim語句支持此語法,這與固定數組中使用的語法相同。對於每個維度,每個ReDim語句都可以更改元素的數量以及上限和下限。然而,陣列的尺寸不能改變。
ReDim DynArray(4到12)
例如,在模塊級用第壹個聲明建立的動態數組Matrix1:
Dim Matrix1()作為整數
Sub CalcValuesNow()
ReDim matrix 1(19,29)
末端接頭
ReDim語句將壹個20 × 30的整數矩陣分配給該矩陣(元素的總大小為600)。還有另壹種用變量設置動態數組邊界的方法:
ReDim matrix 1(X,Y)
請註意,您可以將字符串分配給大小可變的字節數組。字節數組也可以分配給變長字符串。請務必註意,字符串中的字節數因平臺而異。Unicode平臺上相同字符串的字節數是非Unicode平臺上的兩倍。
保留動態數組的內容
每次執行ReDim語句時,當前存儲在數組中的所有值都會丟失。Visual Basi將數組元素的值重置為空(對於變量數組)、0(對於數值數組)、零長度字符串(對於字符串數組)或空(對於對象數組)。
這樣做非常有用。有時您希望在不丟失數組中數據的情況下更改數組的大小。將redim Preserve dyna ray(ubound(dyna ray)+1)與Preserve關鍵字壹起使用。
ReDim保留矩陣(10,UBound(Matrix,2)+1)
並且不能按如下方式編程:
ReDim保留矩陣(UBound(Matrix,1)+1,10)