Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A tömbváltozót úgy inicializálhatja, hogy egy tömbkonstanst beleszámít egy New záradékba, és megadja a tömb kezdeti értékeit. Megadhatja a típust, vagy engedélyezheti a tömbkonstans értékeiből való következtetést. A típus kikövetkeztetéséről további információt a Tömbökben található "Tömb feltöltése kezdeti értékekkel" című témakörben talál.
Tömbváltozó inicializálása tömbkonstans használatával
A záradékban
Newvagy a tömbérték hozzárendelésekor adja meg az elemértékeket a kapcsos zárójelekben ({}). Az alábbi példa számos módszert mutat be egy változó deklarálására, létrehozására és inicializálására egy olyan tömbhöz, amely típuselemekkelCharrendelkezik.' The following five lines of code create the same array. ' Preferred syntaxes are on the lines with chars1 and chars2. Dim chars1 = {"%"c, "&"c, "@"c} Dim chars2 As Char() = {"%"c, "&"c, "@"c} Dim chars3() As Char = {"%"c, "&"c, "@"c} Dim chars4 As Char() = New Char(2) {"%"c, "&"c, "@"c} Dim chars5() As Char = New Char(2) {"%"c, "&"c, "@"c}Minden egyes utasítás végrehajtása után a létrehozott tömb hossza 3, az indexek 0-tól 2-ig terjedő elemek a kezdeti értékeket tartalmazzák. Ha a felső határt és az értékeket is megadja, a 0 indextől a felső határig minden elemhez meg kell adnia egy értéket.
Figyelje meg, hogy nem kell megadnia az index felső határát, ha elemértékeket ad meg egy tömbkonstansban. Ha nincs megadva felső határ, a tömb mérete a tömbkonstans értékeinek száma alapján lesz levonva.
Többdimenziós tömbváltozó inicializálása tömbkonstansok használatával
Az értékeket kapcsos zárójelekbe (
{}) ágyazva. Győződjön meg arról, hogy a beágyazott tömbkonstansok mind azonos típusú és hosszúságú tömbökként következtetnek. Az alábbi példakód többdimenziós tömb inicializálására mutat be példákat.Dim numbers = {{1, 2}, {3, 4}, {5, 6}} Dim customerData = {{"City Power & Light", "http://www.cpandl.com/"}, {"Wide World Importers", "http://wideworldimporters.com"}, {"Lucerne Publishing", "http://www.lucernepublishing.com"}} ' You can nest array literals to create arrays that have more than two ' dimensions. Dim twoSidedCube = {{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}}Explicit módon megadhatja a tömbhatárokat, vagy kihagyhatja őket, és a fordító a tömbkonstans értékei alapján következtethet a tömbhatárokra. Ha a felső határokat és az értékeket is megadja, minden elemhez meg kell adnia egy értéket a 0 indextől a felső határig minden dimenzióban. Az alábbi példa többféleképpen is deklarálhat, hozhat létre és inicializálhat egy változót úgy, hogy olyan kétdimenziós tömböt tartalmazzon, amely típuselemekkel rendelkezik
Short' The following five lines of code create the same array. ' Preferred syntaxes are on the lines with scores1 and scores2. Dim scores1 = {{10S, 10S, 10S}, {10S, 10S, 10S}} Dim scores2 As Short(,) = {{10, 10, 10}, {10, 10, 10}} Dim scores3(,) As Short = {{10, 10, 10}, {10, 10, 10}} Dim scores4 As Short(,) = New Short(1, 2) {{10, 10, 10}, {10, 10, 10}} Dim scores5(,) As Short = New Short(1, 2) {{10, 10, 10}, {10, 10, 10}}Az egyes utasítások végrehajtása után a létrehozott tömb hat inicializált elemet tartalmaz, amelyek indexekkel
(0,0),(0,1),(0,2),(1,0),(1,1), és(1,2). Minden tömbhely tartalmazza az értéket10.Az alábbi példa egy többdimenziós tömbön halad végig. A Visual Basicben írt Windows-konzolalkalmazásban illessze be a kódot a
Sub Main()metódusba. Az utolsó megjegyzések a kimenetet mutatják.Dim numbers = {{1, 2}, {3, 4}, {5, 6}} ' Iterate through the array. For index0 = 0 To numbers.GetUpperBound(0) For index1 = 0 To numbers.GetUpperBound(1) Debug.Write(numbers(index0, index1).ToString & " ") Next Debug.WriteLine("") Next ' Output ' 1 2 ' 3 4 ' 5 6
Szaggatott tömbváltozó inicializálása tömbkonstansok használatával
Objektumértékek beágyazása kapcsos zárójelekbe (
{}). Bár különböző hosszúságú tömbkonstansokat is beágyazhat, szaggatott tömb esetén győződjön meg arról, hogy a beágyazott tömbkonstansok zárójelek (()) közé vannak zárva. A zárójelek kényszerítik a beágyazott tömbkonstansok kiértékelését, és az eredményként kapott tömbök lesznek a szaggatott tömb kezdeti értékei. Az alábbi példakód két példát mutat be a szaggatott tömb inicializálására.' Create a jagged array of arrays that have different lengths. Dim jaggedNumbers = {({1, 2, 3}), ({4, 5}), ({6}), ({7})} ' Create a jagged array of Byte arrays. Dim images = {New Byte() {}, New Byte() {}, New Byte() {}}Az alábbi példa egy szaggatott tömbön halad végig. A Visual Basicben írt Windows-konzolalkalmazásban illessze be a kódot a
Sub Main()metódusba. A kód utolsó megjegyzései a kimenetet mutatják.' Create a jagged array of arrays that have different lengths. Dim jaggedNumbers = {({1, 2, 3}), ({4, 5}), ({6}), ({7})} For indexA = 0 To jaggedNumbers.Length - 1 For indexB = 0 To jaggedNumbers(indexA).Length - 1 Debug.Write(jaggedNumbers(indexA)(indexB) & " ") Next Debug.WriteLine("") Next ' Output: ' 1 2 3 ' 4 5 ' 6 ' 7