VB.Net Arrays: String, Dynamic med EXEMPEL
⚡ Smart sammanfattning
VB.Net-arrayer lagrar flera värden av samma datatyp under ett variabelnamn, med ett index som börjar på noll. Både arrayer med fast storlek och dynamiska arrayer stöds, och funktionerna Split och Join konverterar mellan strängar och arrayer.
Vad är en Array?
En array är en datastruktur som används för att lagra element av samma typ data typElementen är ordnade sekventiellt med det första elementet vid index 0 och det sista elementet vid index n-1, där n är det totala antalet element i arrayen.
Hur man deklarerar och initierar en array
In VB.Net, deklareras matriser med hjälp av Dim-satsen. Till exempel:
Dim myData() As Integer
I exemplet ovan har vi definierat en array som heter myData, och den ska innehålla element av heltalsdatatypen. Följande exempel visar hur vi kan deklarera en array för att hålla strängelement:
Dim myData(10) As String
Vi har definierat en array som heter myData för att hålla 10 strängar.
Vi kan initiera arrayer vid tidpunkten för deras deklaration. Till exempel:
Dim myData() As Integer = {11, 12, 22, 7, 47, 32}
Vi har deklarerat arrayen myData och lagt till 6 heltalselement till den. Detta kan också göras för strängar:
Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}
Vi har skapat en array som heter elever och lagt till 5 namn till den.
Arrayer i VB.Net delas in i två grupper beroende på om deras storlek kan ändras efter deklaration. Den första gruppen är arrayer med fast storlek.
Arrayer med fast storlek
En matris med fast storlek innehåller ett fast antal element. Detta innebär att du måste definiera antalet element som den kommer att innehålla under sin definition. Anta att du behöver en array som endast innehåller 3 elevnamn. Du kan definiera och initiera arrayen enligt följande:
Dim students(0 to 2) As String students(0) = "John" students (1) = "Alice" students (2) = "Antony"
Vi började med att deklarera en strängarray som heter studenter. 0 till 2 deklarerar att arrayen kommer att lagra element från dess index 0 till index 2, vilket betyder att vi kommer att ha 3 element totalt.
För att lägga till element i arrayen har vi använt arraynamnet och angett indexet där elementet ska lagras. Till exempel kommer namnet John att lagras i index 0 i arrayen, vilket betyder att det kommer att utgöra det första elementet i arrayen. Antony kommer att vara det sista elementet i arrayen.
När antalet element inte är känt i förväg blir en dynamisk array det bättre valet.
Dynamiska matriser
Detta är en array som kan innehålla hur många element som helst. Arraystorleken kan växa när som helst. Detta innebär att du kan lägga till nya element till arrayen när som helst vi vill. För att demonstrera detta, låt oss först definiera en array av heltal:
Dim nums() As Integer
Vi har definierat en heltalsmatris med namnet nums. Du måste nu lägga till två element till arrayen, samtidigt som du ger utrymme för att ändra storlek på den. Du måste använda ReDim-satsen enligt följande:
ReDim nums(1)
nums(0) = 12
nums(1) = 23
Vår array har nu två element i index 0 och 1. Vi måste lägga till ett tredje element till den vid index 3 samtidigt som vi behåller de två element som den redan har. Vi kan göra det på följande sätt:
ReDim Preserve nums(2) nums(2) = 35
Arrayen har nu tre element.
Efter att en array har fyllts i är nästa uppgift att läsa tillbaka de värden den innehåller.
Hämta innehållet i en array
Hämtning innebär åtkomst till arrayelementen. För att komma åt ett arrayelement använder vi dess index. Låt oss visa detta med ett exempel.
Steg 1) Börja med att skapa en ny konsolapplikation.
Steg 2) Lägg till följande kod i applikationen:
Module Module1 Sub Main() Dim students(0 to 2) As String students(0) = "John" students(1) = "Alice" students(2) = "Antony" Console.WriteLine("First student is {0} ", students(0)) Console.WriteLine("Second student is {0} ", students(1)) Console.WriteLine("Third student is {0} ", students(2)) Console.ReadKey() End Sub End Module
Steg 3) Kör koden genom att klicka på Start-knappen i verktygsfältet. Du får upp följande fönster:
Vi har använt följande kod:
Förklaring till Code:
- Skapa en modul som heter Module1.
- Skapa den huvudsakliga underproceduren.
- Skapa en array med namnet elever för att lagra strängelement. Arrayen kommer att lagra element från index 0 till index 2, vilket betyder att den kommer att ha totalt 3 element.
- Att lägga till namnet John som det första elementet i arrayen, det vill säga John lagras vid index 0.
- Lägga till namnet Alice som det andra elementet i arrayen, det vill säga Alice lagrad i index 1.
- Att lägga till namnet Antony som det tredje elementet i arrayen, det vill säga Antony lagrad i index 2.
- Skriver ut lite text och elementet lagrat i index 0 för arraystudenterna på konsolen. Studenterna(0) hjälper oss att komma åt elementet vid index 0 för arrayen namngivna studenter.
- Skriver ut lite text och elementet lagrat i index 1 för arraystudenterna på konsolen. Studenterna(1) hjälper oss att komma åt elementet vid index 1 för arrayen namngivna studenter.
- Skriver ut lite text och elementet lagrat i index 2 för arraystudenterna på konsolen. Studenterna(2) hjälper oss att komma åt elementet vid index 2 för arrayen namngivna studenter.
- Pausar konsolfönstret i väntan på att användaren ska vidta åtgärder för att stänga det.
- Slut på underförfarandet.
- Slutet på modulen.
Lägga till nya element i en array
Detta kommer bara att hända om du har en dynamisk array. Om du hade deklarerat en dimensionell array med fast storlek och den är full av array-element, kan du inte lägga till nya element till den. Följande exempel visar hur man lägger till nya element i en dynamisk array:
Steg 1) Börja med att skapa en ny konsolapplikation.
Steg 2) Lägg till följande kod i applikationen:
Module Module1 Sub Main() Dim nums() As Integer ReDim nums(1) nums(0) = 12 nums(1) = 23 For x = 0 To nums.Length - 1 Console.WriteLine("Initial array element: {0}", nums(x)) Next ReDim Preserve nums(2) nums(2) = 35 For x = 0 To nums.Length - 1 Console.WriteLine("Final array element: {0}", nums(x)) Next Console.ReadKey() End Sub End Module
Steg 3) Klicka på Start-knappen i verktygsfältet för att köra koden. Du bör få upp följande fönster:
Vi har använt följande kod:
Förklaring till Code:
- Skapa en modul som heter Module1.
- Skapa den huvudsakliga underproceduren.
- Skapa en matris med namnet nums för att hålla heltalsvärden.
- Att specificera att ovanstående array kommer att lagra två element, det vill säga vid index 0 och 1 samtidigt som det ger utrymme för storleksändring.
- Lägga till elementet 12 till index 0 för arraynummer.
- Lägga till elementet 23 till index 1 för arraynummer.
- Använda en for-loop för att skapa en variabel x för att hjälpa oss att iterera från de första till de sista elementen i arraynumren. Observera att arrayen nu har två element, 12 och 23.
- Skriver ut lite text och elementen i arrayen på konsolen.
- Avsluta for-loopen och jumpaping till nästa del av koden.
- Ändra storlek på arraynumren för att tillåta element vid index 0 till 2. Den kommer nu att kunna lagra 3 element istället för 2. Nyckelordet Bevara hjälper oss att behålla de nuvarande elementen i arrayen, det vill säga 12 och 23.
- Lägga till elementet 35 till index 2 i arrayen. Arrayen har nu tre element, 12, 23 och 35.
- Använda en for-loop för att skapa en variabel x för att hjälpa oss att iterera från de första till de sista elementen i arraynumren. Observera att arrayen nu har tre element, 12, 23 och 35.
- Skriver ut lite text och elementen i arrayen på konsolen.
- Avsluta for-loopen och jumpaping till nästa del av koden.
- Pausa konsolfönstret och vänta på att användaren ska vidta åtgärder för att stänga det.
- Slut på underförfarandet.
- Slutet på modulen.
Ta bort en array
Det rekommenderas att du raderar din array när du är klar med den, mest när du har att göra med en dynamisk array. Detta hjälper dig att frigöra lite minnesutrymme.
För att ta bort en array behöver du bara anropa Erase-satsen följt av namnet på arrayen. Till exempel:
Dim nums(1) As Integer nums(0) = 12 nums(1) = 23 Erase nums
Vi har deklarerat en array av heltal som heter nums och lagt till två element till den. Radera nums-satsen kommer att radera matrisen.
Utöver att lagra värden tillhandahåller VB.Net inbyggda funktioner som konverterar mellan strängar och arrayer. Den första av dessa är Split-funktionen.
Split-funktionen
Funktionen delning i Visual Basic .NET hjälper oss att dela upp en sträng i delar och behålla dem i en array. Följande exempel visar hur man använder funktionen:
Steg 1) Skapa en ny konsolapplikation.
Steg 2) Lägg till följande kod i applikationen:
Module Module1 Sub Main() Dim myarray() As String Dim guru99 As String Dim x As Integer guru99 = "Welcome, to, Guru99" myarray = Split(guru99, ", ") For x = LBound(myarray) To UBound(myarray) Console.WriteLine(myarray(x)) Next Console.ReadKey() End Sub End Module
Steg 3) Kör koden genom att klicka på Start-knappen i verktygsfältet. Du bör få upp följande fönster:
Vi har använt följande kod:
Förklaring till Code:
- Skapa en modul som heter Module1.
- Startar huvuddelproceduren.
- Skapa en array med namnet myarray för att hålla strängvärden.
- Skapa en strängvariabel med namnet guru99.
- Skapa en heltalsvariabel med namnet x.
- Tilldela en sträng till variabeln guru99.
- Dela upp strängen ovan i delar och placera dem i arrayen som heter myarray. "," (komma) är avgränsaren, därför kommer splitfunktionen att använda den för att markera slutet på de olika delarna av strängen.
- Använda variabeln x för att iterera genom arrayen som heter myarray. LBound och UBound anger de nedre gränserna respektive de övre gränserna för arrayen.
- Skriver ut värdena för arrayen med namnet myarray på konsolen.
- Avslutar for-loopen.
Join-funktionen
Join-funktionen hjälper oss att sammanfoga flera arrayer till en enda sträng. Följande exempel visar detta:
Steg 1) Börja med att skapa en ny konsolapplikation.
Steg 2) Lägg till följande kod i applikationen:
Module Module1 Sub Main() Dim students(0 To 2) As String students(0) = "John" students(1) = "Alice" students(2) = "Antony" Dim classmates As String classmates = Join(students, ", ") Console.WriteLine(classmates) Console.ReadKey() End Sub End Module
Steg 3) Kör koden genom att klicka på Start-knappen i verktygsfältet:
Vi har använt följande kod:
Förklaring till Code:
- Skapa en modul som heter Module1.
- Skapa den huvudsakliga underproceduren.
- Skapa en array med namnet elever för att hålla 3 strängvärden.
- Lägger till namnet John till index 0 för arrayen.
- Lägger till namnet Alice till index 1 i arrayen.
- Lägger till namnet Antony till index 2 i arrayen.
- Definiera en variabel med namnet klasskamrater av strängdatatyp.
- Sammanfoga alla element i arrayen studenter och separera dem med ett , (komma). Resultatet av denna operation kommer att tilldelas variabeln klasskamrater.
- Skriver ut innehållet i klasskamratvariabeln på konsolen.
- Pausar konsolfönstret i väntan på att användaren ska vidta åtgärder för att stänga det.
- Avslutar det huvudsakliga underförfarandet.
- Avslutar modulen.








