VB.Net Arrays: Sträng, dynamisk med EXAMPLES

Innehållsförteckning:

Anonim

Vad är en matris?

En matris är en datastruktur som används för att lagra element av samma datatyp. Elementen ordnas 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 matrisen.

I den här handledningen lär du dig:

  • Vad är en matris?
  • Hur man deklarerar och initialiserar en matris
  • Arrayer med fast storlek
  • Dynamiska matriser
  • Hämta innehållet i en matris
  • Lägga till nya element i en matris
  • Radera en matris
  • Split-funktionen
  • Anslutningsfunktionen

Hur man deklarerar och initialiserar en matris

I VB.NET deklareras matriser med Dim-uttalandet. Till exempel:

Dim myData() As Integer

I exemplet ovan har vi definierat en matris med namnet myData och den ska innehålla element av datatypen för heltal. Följande exempel visar hur vi kan deklarera en matris som innehåller strängelement:

Dim myData(10) As String

Vi har definierat en matris med namnet myData för att hålla 10 strängar.

Vi kan initiera matriser vid tidpunkten för deklarationen. 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 matris med namnet studenter och lagt till 5 namn till den.

Arrayer med fast storlek

En array med fast storlek innehåller ett fast antal element. Det betyder att du måste definiera antalet element som den kommer att innehålla under sin definition. Antag att du behöver en matris för att endast innehålla tre studentnamn. Du kan definiera och initiera matrisen enligt följande:

Dim students(0 to 2) As Stringstudents(0) = "John"students (1) = "Alice"students (2) = "Antony"

Vi började med att förklara en strängmatris med namnet studenter. 0 till 2 förklarar att matrisen kommer att lagra element från dess index 0 till index 2, vilket innebär att vi kommer att ha 3 element totalt.

För att lägga till element i arrayen har vi använt arraynamnet och specificerat det index där elementet kommer att lagras. Till exempel kommer namnet John att lagras i index 0 i arrayen, vilket innebär att det kommer att utgöra det första elementet i arrayen. Antony kommer att vara det sista elementet i matrisen.

Dynamiska matriser

Detta är en matris som kan innehålla valfritt antal element. Arraystorleken kan växa när som helst. Det betyder att du kan lägga till nya element i matrisen när som helst vi vill. För att demonstrera detta, låt oss först definiera en rad heltal:

Dim nums() As Integer

Vi har definierat ett heltal array som heter nums. Du måste nu lägga till två element i matrisen, samtidigt som du ger utrymme för att ändra storlek på den. Du måste använda ReDim-uttalandet enligt följande:

ReDim nums(1)nums(0) = 12nums(1) = 23

Vår matris har nu två element i index 0 och 1. Vi måste lägga till ett tredje element i index 3 samtidigt som vi behåller de två element som det redan har. Vi kan göra det enligt följande:

ReDim Preserve nums(2)nums(2) = 35

Array har nu tre element.

Hämta innehållet i en matris

Hämtning innebär åtkomst till arrayelementen. För att komma åt ett matriselement använder vi dess index. Låt oss demonstrera detta med hjälp av ett exempel.

Steg 1) Börja med att skapa ett nytt konsolprogram.

Steg 2) Lägg till följande kod i applikationen:

Module Module1Sub Main()Dim students(0 to 2) As Stringstudents(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 SubEnd Module

Steg 3) Kör koden genom att klicka på Start-knappen i verktygsfältet. Du får följande fönster:

Vi har använt följande kod:

Förklaring av kod:

  1. Skapa en modul med namnet Module1.
  2. Skapa huvudunderproceduren.
  3. Skapa en matris med namnet studenter för att lagra strängelement. Matrisen lagrar element från index 0 till index 2, vilket innebär att den kommer att ha totalt 3 element.
  4. Lägga till namnet John som det första elementet i matrisen, det vill säga John lagrad i index 0.
  5. Lägga till namnet Alice som det andra elementet i matrisen, det vill säga Alice lagras i index 1.
  6. Lägga till namnet Antony som det tredje elementet i matrisen, det vill säga Antony lagras i index 2.
  7. Skriva ut lite text och elementet som lagras i index 0 för array-studenterna på konsolen. Eleverna (0) hjälper oss att komma åt elementet vid index 0 för matrisen med namnet studenter.
  8. Skriva ut lite text och elementet som lagrats i index 1 för arraystudenterna på konsolen. Eleverna (1) hjälper oss att komma åt elementet i index 1 för gruppen som heter studenter.
  9. Skriva ut lite text och elementet som lagras i index 2 för array-studenterna på konsolen. Eleverna (2) hjälper oss att komma åt elementet i index 2 för gruppen som heter studenter.
  10. Pausar konsolfönstret och väntar eller användaren vidtar åtgärder för att stänga det.
  11. Slut på underförfarandet.
  12. Modulens slut.

Lägga till nya element i en matris

Detta händer bara om du har en dynamisk matris. Om du hade deklarerat en dimensionerad array med fast storlek och den är full av array-element kan du inte lägga till nya element i den. Följande exempel visar hur man lägger till nya element i en dynamisk matris:

Steg 1) Börja med att skapa ett nytt konsolprogram.

Steg 2) Lägg till följande kod i applikationen:

Module Module1Sub Main()Dim nums() As IntegerReDim nums(1)nums(0) = 12nums(1) = 23For x = 0 To nums.Length - 1Console.WriteLine("Initial array element: {0}", nums(x))NextReDim Preserve nums(2)nums(2) = 35For x = 0 To nums.Length - 1Console.WriteLine("Final array element: {0}", nums(x))NextConsole.ReadKey()End SubEnd Module

Steg 3) Klicka på Start-knappen i verktygsfältet för att köra koden. Du bör få följande fönster:

Vi har använt följande kod:

Förklaring av kod:

  1. Skapa en modul med namnet Module1.
  2. Skapa huvudunderproceduren.
  3. Skapa en matris med namnen för att innehålla heltalvärden.
  4. Om du anger att ovanstående matris kommer att lagra två element, det vill säga i index 0 och 1 samtidigt som det ger utrymme för att ändra storlek.
  5. Lägga till elementet 12 till index 0 för arraynumren.
  6. Lägga till elementet 23 i index 1 för matrisnummer.
  7. Använd en for-loop för att skapa en variabel x för att hjälpa oss att itera från de första till de sista elementen i arraynumren. Observera att matrisen nu har två element, 12 och 23.
  8. Skriva ut lite text och elementen i arrayen på konsolen.
  9. Avsluta for-loop och hoppa till nästa del av koden.
  10. Ändra storlek på matrisnumren så att element tillåts vid index 0 till 2. Det kommer nu att kunna lagra 3 element i stället för 2. Nyckelordet Bevara hjälper oss att behålla de aktuella elementen i matrisen, det vill säga 12 och 23.
  11. Lägga till elementet 35 i index 2 i matrisen. Array har nu tre element, 12, 23 och 35.
  12. Använd en for-loop för att skapa en variabel x för att hjälpa oss att itera från de första till de sista elementen i arraynumren. Observera att matrisen nu har tre element, 12, 23 och 35.
  13. Skriva ut lite text och elementen i arrayen på konsolen.
  14. Avsluta for-loop och hoppa till nästa del av koden.
  15. Pausa konsolfönstret och vänta på att användaren ska vidta åtgärder för att stänga det.
  16. Slut på underförfarandet.
  17. Modulens slut.

Ta bort en matris

Det rekommenderas att du raderar din matris när du är klar med den, mestadels när du har att göra med en dynamisk matris. Detta hjälper dig att frigöra minnesutrymme.

För att radera en matris måste du bara ringa Erase-uttalandet följt av namnet på arrayen. Till exempel:

Dim nums(1) As Integernums(0) = 12nums(1) = 23Erase nums

Vi har deklarerat en rad heltal med namnen och lagt till två element i den. Erase nums-uttalandet raderar matrisen.

Split-funktionen

Delningsfunktionen som tillhandahålls av Visual Basic .NET hjälper oss att dela en sträng i delar och hålla dem i en matris. Följande exempel visar hur du använder den här funktionen:

Steg 1) Skapa ett nytt konsolprogram.

Steg 2) Lägg till följande kod i applikationen:

Module Module1Sub Main()Dim myarray() As StringDim guru99 As StringDim x As Integerguru99 = "Welcome, to, Guru99"myarray = Split(guru99, ", ")For x = LBound(myarray) To UBound(myarray)Console.WriteLine(myarray(x))NextConsole.ReadKey()End SubEnd Module

Steg 3) Kör koden genom att klicka på Start-knappen i verktygsfältet. Du bör få följande fönster:

Vi har använt följande kod:

Förklaring av kod:

  1. Skapa en modul med namnet Module1.
  2. Startar huvudunderförfarandet.
  3. Skapa en matris med namnet myarray för att hålla strängvärden.
  4. Skapa en strängvariabel med namnet guru99.
  5. Skapa en heltalsvariabel med namnet x.
  6. Tilldela en sträng till variabeln guru99.
  7. Dela upp strängen i delar och placera dem i matrisen som heter myarray. "," (Komma) är avgränsare, därför kommer split-funktionen att använda den för att markera slutet på de olika delarna av strängen.
  8. Använd variabeln x för att iterera genom matrisen med namnet myarray. LBound och UBound anger de nedre gränserna respektive de övre gränserna för matrisen.
  9. Skriva ut värdena för matrisen med namnet myarray på konsolen.
  10. Avsluta for loop och

Anslutningsfunktionen

Sammanfogningsfunktionen hjälper oss att ansluta flera matriser till en enda sträng. Följande exempel visar detta:

Steg 1) Börja med att skapa ett nytt konsolprogram.

Steg 2) Lägg till följande kod i applikationen:

Module Module1Sub Main()Dim students(0 To 2) As Stringstudents(0) = "John"students(1) = "Alice"students(2) = "Antony"Dim classmates As Stringclassmates = Join(students, ", ")Console.WriteLine(classmates)Console.ReadKey()End SubEnd Module

Steg 3) Kör koden genom att klicka på Start-knappen i verktygsfältet:

Vi har använt följande kod:

Förklaring av kod:

  1. Skapa en modul med namnet Module1.
  2. Skapa huvudunderproceduren.
  3. Skapa en matris med namnet studenter för att hålla tre strängvärden.
  4. Lägga till namnet John i matrisens index 0.
  5. Lägga till namnet Alice i matrisens index 1.
  6. Lägga till namnet Antony i index 2 i matrisen.
  7. Definiera en variabel med namnet klasskompisar av strängdatatyp.
  8. Sammanfoga alla element i matrisstudenterna och separera dem med hjälp av a, (komma). Resultatet av denna operation kommer att tilldelas de variabla klasskamraterna.
  9. Skriva ut innehållet i klasskompisvariabeln på konsolen.
  10. Pausar konsolfönstret och väntar på att användaren ska vidta åtgärder för att stänga det.
  11. Avslutar huvudunderförfarandet.
  12. Avsluta modulen.

Sammanfattning

  • Arrays används för att lagra dataelement som tillhör samma datatyp.
  • En dynamisk matris gör det möjligt för användaren att ändra storlek på den genom att lägga till fler element i den. Du använder kommandot ReDim för att lägga till element i en befintlig matris
  • Storleken på en array med fast storlek kan inte ändras.
  • Matriselementen ordnas med hjälp av index, med det första elementet vid index 0 och det sista elementet vid index n-1, där n är det totala antalet matriselement.
  • Arrayer kan tas bort med funktionen Radera
  • Du kan använda split- och join-funktioner för att dela eller gå med i en strängmatris