每行的數(shù)字個(gè)數(shù)不同,你說的這是不規(guī)則數(shù)組,解決方案如下:
創(chuàng)新互聯(lián)公司是專業(yè)的天峨網(wǎng)站建設(shè)公司,天峨接單;提供網(wǎng)站制作、網(wǎng)站設(shè)計(jì),網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行天峨網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
Dim b As String = ""
Dim a As Integer()() = New Integer(9)() {}
a(0) = New Integer() {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
a(1) = New Integer() {0, 3, 4, 5}
a(2) = New Integer() {0, 4, 5, 6, 7}
a(3) = New Integer() {0, 6, 5, 8, 9, 1}
a(4) = New Integer() {0, 2, 5, 1, 7}
a(5) = New Integer() {0, 4, 2, 6, 7, 3}
a(6) = New Integer() {0, 4, 5, 3, 2}
a(7) = New Integer() {0, 4, 1, 6, 2, 8, 5, 3}
a(8) = New Integer() {0, 4, 9, 6, 3, 5, 7}
a(9) = New Integer() {0, 1, 5, 9, 7, 6, 2, 4, 3, 8}
For i As Integer = 0 To a.GetUpperBound(0)
b = "第" i + 1 "行有" a(i).GetUpperBound(0) + 1 "個(gè)數(shù)" vbCrLf
Next
MessageBox.Show(b)
動(dòng)態(tài)數(shù)組一般開始不能直接寫dim a as string。除非Variant。一般先定義類型 但是數(shù)組名后得加上括號(hào)。例如
DIM a() AS STRING
后面根據(jù)需要使用的時(shí)候,可以自己定義大小。但是必須注意一點(diǎn)。重新定義的時(shí)候,
Redim a(11) 的時(shí)候,就會(huì)將原來的數(shù)組元素清空了,沒有保存。
Redim Preserve a(11) 就會(huì)將重新定義數(shù)組大小的同時(shí),還將原來的數(shù)據(jù)保存了。
array(2,2)是多維數(shù)組的訪問方式,其數(shù)組的定義和初始化方法為:
Dim?array?As?Integer(,)?=?{{1,?2,?3},?{4,?5,?6}}
每一行的元素?cái)?shù)量是固定且相等的。
array(2)(2)是交錯(cuò)數(shù)組(即數(shù)組的數(shù)組)的訪問方式。也就是,你有一個(gè)數(shù)組,這個(gè)數(shù)組的每個(gè)元素也是數(shù)組。其數(shù)組的定義和初始化方法為:
Dim?array?As?Integer()()?=?{New?Integer()?{1,?2,?3},?New?Integer()?{4,?5,?6,?7,?8}}
由于每個(gè)元素是獨(dú)立的數(shù)組,所以交錯(cuò)數(shù)組每一行的元素?cái)?shù)量不固定,且可以不等。
用一個(gè)帶括號(hào)的變量名來定義一維數(shù)組和多維數(shù)組如dim a(5) as integer '定義了1個(gè)1維、6個(gè)元素?cái)?shù)組dim a(5,5) as integer '定義了1個(gè)2維、36個(gè)元素的數(shù)組
下面的代碼是含有錯(cuò)誤跳轉(zhuǎn)的,但是如果放在這一個(gè)函數(shù)里面不會(huì)影響你其他的代碼。
感覺完全不用錯(cuò)誤處理做不出來。【雖然有個(gè)IsError,但是無法像 IsError(UBound(mArray, i))這樣使用它,不然我們就可以不用跳轉(zhuǎn)了。】
【Excel中的VBA與VB語法上沒有什么差別】
設(shè)計(jì)思想:
在VB中數(shù)姐最大維數(shù)是60,所以我們通過錯(cuò)誤捕捉來處理這個(gè)問題,在這里我們用到UBound函數(shù)
Public Function ArrayRange(mArray As Variant) As Integer
Dim i As Integer
Dim Ret As Integer
Dim ErrF As Boolean
ErrF = False
On Error GoTo ErrHandle
'判斷代入的參數(shù)是否為數(shù)組
If Not IsArray(mArray) Then
ArrayRange = -1
Exit Function
End If
'VB中數(shù)組最大為60
For i = 1 To 60
'用UBound函數(shù)判斷某一維的上界,如果大數(shù)組的實(shí)際維數(shù)時(shí)產(chǎn)生超出范圍錯(cuò)誤,
' 此時(shí)我們通過Resume Next 來捕捉錯(cuò)這個(gè)錯(cuò)誤
Ret = UBound(mArray, i)
If ErrF Then Exit For
Next i
'最后返回
ArrayRange = Ret
Exit Function
ErrHandle:
Ret = i - 1
ErrF = True
Resume Next
End Function
就是指引用一個(gè)數(shù)組元素時(shí),有幾個(gè)下標(biāo)來描述。
例如a(1)是數(shù)組的基本元素,則數(shù)組a就是一維數(shù)組;
b(1,2)是數(shù)組的基本元素,則數(shù)組b就是二維數(shù)組;
c(2,1,2)是數(shù)組的基本元素,則數(shù)組c就是三維數(shù)組;
文章名稱:數(shù)組的維度vb.net 數(shù)組的維度屬性
當(dāng)前網(wǎng)址:http://www.chinadenli.net/article28/docdpjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、搜索引擎優(yōu)化、外貿(mào)建站、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)