Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby zainicjować zmienną tablicową, użyj literału tablicy w klauzuli New i określ początkowe wartości tablicy. Można określić typ lub zezwolić na wnioskowanie na podstawie wartości w literale tablicy. Aby uzyskać więcej informacji na temat wnioskowania typu, zobacz "Wypełnianie tablicy przy użyciu wartości początkowych" w Tablice.
Aby przy użyciu literału tablicy zainicjować zmienną tablicową
Albo w klauzuli
New, albo podczas przypisywania wartości tablicy, podaj wartości elementów wewnątrz nawiasów klamrowych ({}). W poniższym przykładzie pokazano kilka sposobów deklarowania, tworzenia i inicjowania zmiennej zawierającej tablicę zawierającą elementy typuChar.' 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}Po wykonaniu każdej instrukcji utworzona tablica ma długość 3, z elementami indeksu od 0 do indeksu 2 zawierającymi wartości początkowe. Jeśli podasz zarówno górną granicę, jak i wartości, musisz uwzględnić wartość dla każdego elementu z indeksu 0 przez górną granicę.
Należy zauważyć, że nie musisz określać górnej granicy indeksu, jeśli podasz wartości elementów w literale tablicy. Jeśli nie określono górnej granicy, rozmiar tablicy jest wywnioskowany na podstawie liczby wartości w literale tablicy.
Aby zainicjować zmienną tablicy wielowymiarowej przy użyciu literałów tablicy
Zagnieżdż wartości wewnątrz nawiasów klamrowych (
{}) w nawiasach klamrowych. Upewnij się, że zagnieżdżone literały tablicy są wnioskowane jako tablice tego samego typu i długości. Poniższy przykład kodu przedstawia kilka przykładów inicjowania tablicy wielowymiarowej.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}}}Można jawnie określić granice tablicy lub pozostawić je pominięte, umożliwiając kompilatorowi wywnioskowanie granic tablicy na podstawie wartości literału tablicy. Jeśli podasz zarówno górne granice, jak i wartości, musisz uwzględnić wartość dla każdego elementu z indeksu 0 przez górną granicę w każdym wymiarze. W poniższym przykładzie pokazano kilka sposobów deklarowania, tworzenia i inicjowania zmiennej zawierającej tablicę dwuwymiarową zawierającą elementy typu
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}}Po wykonaniu każdej instrukcji utworzona tablica zawiera sześć zainicjowanych elementów, które mają indeksy
(0,0), ,(0,1),(0,2)(1,0),(1,1), i(1,2). Każda lokalizacja tablicy zawiera wartość10.Poniższy przykład przechodzi przez tablicę wielowymiarową. W aplikacji konsolowej systemu Windows napisanej w Visual Basic wklej kod do metody
Sub Main(). Ostatnie komentarze pokazują wynik.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
Aby zainicjować zmienną tablicy postrzępionej przy użyciu literałów tablicy
Zagnieżdżanie wartości obiektów wewnątrz nawiasów klamrowych (
{}). Mimo że można również zagnieżdżać literały tablic określające tablice o różnych długościach, w przypadku tablicy postrzępionej upewnij się, że zagnieżdżone literały tablicy są umieszczone w nawiasach (()). Nawiasy wymuszają ocenę zagnieżdżonych literałów tablicy, a wynikowe tablice są używane jako początkowe wartości tablicy postrzępionej. Poniższy przykład kodowania przedstawia dwa przykłady inicjowania tablicy zagnieżdżonej.' 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() {}}Poniższy przykład iteruje po tablicy zębatej. W aplikacji konsolowej systemu Windows napisanej w Visual Basic wklej kod do metody
Sub Main(). Ostatnie komentarze w kodzie pokazują dane wyjściowe.' 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