您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“VB.NET使用數(shù)組的方法和技巧”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
一.VB.NET使用數(shù)組主要內(nèi)容:
在接下來內(nèi)容中,將結(jié)合具體示例來詳細(xì)的介紹下列知識(shí)點(diǎn):
1. 申明數(shù)組,其中包括一維數(shù)組、多維數(shù)組,也包括靜態(tài)數(shù)組和動(dòng)態(tài)數(shù)組,及其初始化。和訪問數(shù)組中的元素。
2. 重新申明數(shù)組,即ReDim語句的使用用法,及其Preserve關(guān)鍵字的作用。
3. 使用For Each …. Next語句來遍歷數(shù)組中各個(gè)元素,F(xiàn)or Each …. Next語句是操作數(shù)據(jù)最為常用的一種語句,它能夠方便的訪問到數(shù)組中的每一個(gè)元素。
4. 申明參數(shù)為數(shù)組的過程或者函數(shù),由于數(shù)組是引用類型,所以在申明參數(shù)為數(shù)組的函數(shù)或過程時(shí),處理方法與參數(shù)為值類型的函數(shù)或過程有點(diǎn)不一樣。
5. 簡要介紹Array類和其主要的常用,以及通過Array類操作數(shù)組的具體方法。
二.申明、初始化數(shù)組和訪問數(shù)組中的元素:
在VB.NET使用數(shù)組中一個(gè)聲明的依然是Dim語句,其申明數(shù)組和Visual Basic的主要區(qū)別在上面內(nèi)容中已經(jīng)簡單說過了。下面在Visual Basic .Net申明一個(gè)長度為“3”的字符串?dāng)?shù)組,并對(duì)之進(jìn)行初始化的代碼:
Dim arrString ( 2 ) As String = {"星期一","星期二","星期三"}
下面代碼是申請(qǐng)一個(gè)2×2的二維字符串?dāng)?shù)組,并對(duì)之進(jìn)行初始化:
Dim arrDate ( 1, 1 ) As String = {{"星期一", "18號(hào)"}, {"星期二", "19號(hào)"}}
靜態(tài)數(shù)組和動(dòng)態(tài)數(shù)組的區(qū)別就在于靜態(tài)數(shù)組的長度是固定的,而動(dòng)態(tài)數(shù)組的長度是不固定的。上面的申明的二個(gè)數(shù)組就是靜態(tài)數(shù)組,而下面二段代碼的作用就是分別申明一個(gè)一維數(shù)組和二維數(shù)組,并對(duì)它們進(jìn)行初始化:
Dim arrString ( ) As String =
{"星期一","星期二","星期三"}'申明一個(gè)動(dòng)態(tài)的一維數(shù)組,并初始化
Dim arrDate ( , ) As String =
{{"星期一", "18號(hào)"}, {"星期二",
"19號(hào)"}}'申明一個(gè)動(dòng)態(tài)的二維數(shù)組,并初始化
對(duì)其他數(shù)據(jù)類型和更多維數(shù)的數(shù)組,其申明和初始化方法和上面的基本差不多,只需根據(jù)數(shù)組的維數(shù)和數(shù)據(jù)類型的不同進(jìn)行相應(yīng)的修改就可以了。
當(dāng)數(shù)組申明和初始化以后,就可以通過元素在數(shù)組中對(duì)應(yīng)的索引值來訪問,下面二段VB.NET使用數(shù)組代碼分別是訪問上面申明并初始化的一維數(shù)組和二維數(shù)組中的一個(gè)元素:
Dim sTemp1 As String =
arrString ( 1 )'訪問arrString數(shù)組中的第2個(gè)元素
Dim sTemp2 As String =
arrDate ( 1 , 1 )'訪問arrDate數(shù)組中的第二行、
第二列元素
三.在VB.NET使用數(shù)組中重新申明數(shù)組:
在Visual Basic .Net重新申明數(shù)組和Visual Basic中基本類似,依然使用的是ReDim語句。在Visual Basic .Net中使用ReDim語句要注意以下三點(diǎn):
1. ReDim語句僅可以在過程級(jí)出現(xiàn)。這意味著不可以在類或模塊級(jí)代碼區(qū)使用ReDim語句來重新申明數(shù)組。
2. ReDim語句只是更改已被正式聲明的數(shù)組的一個(gè)或多個(gè)維度的大小,但不能更改該數(shù)組的維數(shù)。
3. ReDim語句無法更改數(shù)組中元素的數(shù)據(jù)類型,和Dim語句申明數(shù)組的區(qū)別在于無法在ReDim語句中初始化重新申明的數(shù)組。
在使用ReDim重新申明數(shù)組時(shí),最為常見的關(guān)鍵字就是“Preserve”?!癙reserve”的作用是表明在重新申明數(shù)組時(shí),是否要在重新申明的數(shù)組中復(fù)制原數(shù)組中的元素。請(qǐng)比較下面二段代碼:
代碼一:
Dim arrString ( 2 ) As String =
{"星期一","星期二","星期三"}ReDim Preserve arrString ( 4 )
'重新申明arrString數(shù)組,數(shù)組的長
度改為5,并且在新數(shù)組中復(fù)制原數(shù)組的元素arrString ( 3 ) = "星期四"
arrString ( 4 ) = "星期五"
代碼二:
Dim arrString ( 2 ) As String =
{"星期一","星期二","星期三"}ReDim arrString ( 4 )
'重新申明arrString數(shù)組,數(shù)組的長
度改為5,并不往新數(shù)組中復(fù)制原數(shù)組的元素arrString ( 0 ) = "星期一"
arrString ( 1 ) = "星期二"
arrString ( 2 ) = "星期三"
arrString ( 3 ) = "星期四"
arrString ( 4 ) = "星期五"
通過比較上述二段代碼,可見,在***段代碼中由于ReDim中使用了Preserve關(guān)鍵字,所以在重新申明數(shù)組時(shí),就在新數(shù)組中復(fù)制了原數(shù)組的元素,這樣就只需要對(duì)其中的二個(gè)元素進(jìn)行初始化;而第二段由于沒有使用Preserve關(guān)鍵字,就沒有在新數(shù)組中帶入原數(shù)組中的任何元素,所以對(duì)數(shù)組的所有元素都進(jìn)行初始化。通過比較相信您對(duì)重新定義數(shù)組和“Preserve”關(guān)鍵字的使用有了更深的理解。
四.For Each …. Next語句在VB.NET使用數(shù)組中的作用:
For Each …. Next語句好像只是為二種數(shù)據(jù)類型專門度身定做的,其一就是集合,另外一個(gè)就是數(shù)組了。通過For Each …. Next語句,可以十分方便的訪問數(shù)組中的任一元素。請(qǐng)仔細(xì)分析一下下列代碼:
Dim arrString ( 2 ) As String =
{"星期一","星期二","星期三"}Dim Temp As String
For Each Temp In arrString
If Temp = "星期三" Then
MsgBox ( "在數(shù)組中尋找到"
"星期三""字符串")Exit For
'退出For Each …. Next語句
End If
Next
上面代碼的功能是通過For Each …. Next語句訪問arrString數(shù)組中各元素,如果發(fā)現(xiàn)有元素為字符串“星期三”,則彈出提示框,并退出循環(huán)。
同樣用For … Next語句也能夠?qū)崿F(xiàn)上面同樣的功能,只是感覺有點(diǎn)不專業(yè),并且有點(diǎn)繁瑣,下面代碼是用For … Next語句實(shí)現(xiàn)上面For Each …. Next語句同等功能的代碼:
Dim i As Integer
For i = 0 To myString.
Length - 1If arrString ( i ) =
"星期三" ThenMsgBox ( "在數(shù)組中尋找到"
"星期三""字符串" )Exit For
End If
Next
五.申明參數(shù)為數(shù)組的過程或者函數(shù):
由于VB.NET使用數(shù)組為引用類型,所以如果以數(shù)組為參數(shù)過程和函數(shù)在定義時(shí)候就要多加以注意,下面代碼是在Visual Basic .Net申明一個(gè)參數(shù)為數(shù)組的過程的典型代碼,可見在調(diào)用數(shù)組類型之前多了一個(gè)關(guān)鍵字“ByVal”,“ByVal”關(guān)鍵字的作用在于在下面調(diào)用的過程中的不能更改數(shù)組的數(shù)值:
Sub DisplayArray
( ByVal myString ( )
As String )End Sub
六.簡要介紹System.Array類及其成員:
Array類是一個(gè)基類,是公共語言運(yùn)行庫中所有數(shù)組的基類。它提供了創(chuàng)建、操作、搜索和排序數(shù)組的方法。數(shù)組中任一個(gè)元素就是Array中的一個(gè)值。 Array的長度是它可包含的元素總數(shù)。Array的秩是Array中的維數(shù)。Array中維度的下限是Array 中該維度的起始索引,多維Array的各個(gè)維度可以有不同的界限。表01和表02分別是Array類的常用屬性和常用方法及其說明:
七.一個(gè)VB.NET使用數(shù)組的具體示例:
下面介紹的示例的功能包含了數(shù)組的申明、初始化、重新申明、重新初始化、數(shù)組中各元素的排序、數(shù)組的遍歷、查找以及以數(shù)組為參數(shù)的過程的定義及調(diào)用方法等。下面是此示例實(shí)現(xiàn)的具體步驟:
1. 啟動(dòng)Visual Studio .Net。
2. 選擇菜單【文件】|【新建】|【項(xiàng)目】后,彈出【新建項(xiàng)目】對(duì)話框。
3. 將【項(xiàng)目類型】設(shè)置為【Visual Basic項(xiàng)目】。
4. 將【模板】設(shè)置為【W(wǎng)indows應(yīng)用程序】。
5. 在【名稱】文本框中輸入【數(shù)組】。
6. 在【位置】的文本框中輸入【E:\VS.NET項(xiàng)目】,然后單擊【確定】按鈕,這樣在“E:\VS.NET項(xiàng)目”目錄中就產(chǎn)生了名稱為“數(shù)組”的文件夾,并在里面創(chuàng)建了名稱為【數(shù)組】的項(xiàng)目文件。
7. 把Visual Studio .Net的當(dāng)前窗口切換到【Form1.vb(設(shè)計(jì))】窗口,并從【工具箱】中的【W(wǎng)indows窗體組件】選項(xiàng)卡中往Form1窗體中拖入下列組件,并執(zhí)行相應(yīng)操作:
四個(gè)Button組件,分別用來創(chuàng)建一個(gè)“創(chuàng)建一維數(shù)組”、創(chuàng)建“創(chuàng)建二維數(shù)組”、實(shí)現(xiàn)對(duì)“對(duì)一維數(shù)組排序”和實(shí)現(xiàn)“重定義一維數(shù)組”。并在這四個(gè) Button組件拖入Form1的設(shè)計(jì)窗體后,分別雙擊這四個(gè)組件,這樣系統(tǒng)會(huì)在Form1.vb文件分別產(chǎn)生這四個(gè)組件的Click時(shí)間對(duì)應(yīng)的VB.NET使用數(shù)組處理代碼。
“VB.NET使用數(shù)組的方法和技巧”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。