VB.Net för varje…Nästa, Avsluta, Fortsätt-sats

⚡ Smart sammanfattning

VB.Net For Each är en toalettping ett kommando som upprepar ett kodblock en gång för varje element i en array eller samling, vilket låter dig läsa varje element i tur och ordning utan att trackung ett index.

  • 🔁 Syfte: Upprepa satser en gång för varje objekt i en samling eller array.
  • 🧩 Syntax: Loopen går från For Each … In till ett matchande Next-uttryck.
  • 📚 samlingar: For Each itererar valfri IEnumerable-typ, såsom arrayer, List och Dictionary.
  • 🪆 Häckande: En För Varje inuti en annan parar ihop varje yttre föremål med varje inre föremål.
  • Flödeskontroll: Avsluta För lämnar loopen; Fortsätt För hoppar till nästa objekt.
  • 🤖 AI-hjälp: GitHub Copilot och IntelliCode I Visual Studio 2026, slutför For Each-loopar medan du skriver.

VB.Net för varje slinga

VB.Net för varje slinga

VB.Net For Each är en toalettping sats. Du bör använda den här satsen när du behöver upprepa en uppsättning satser för varje element du har i en samling. Du kan använda den för att manipulera alla element som finns i en samling eller array.

Syntax för VB.Net för varje... Nästa påstående

Ocuco-landskapet VB.Net För varje sats används syntaxen nedan:

For Each item [ As data_type ] In group  
    [ statement(s) ]  
    [ Continue For ]  
    [ statement(s) ]  
    [ Exit For ]  
    [ statement(s) ]  
Next [ item ]

Här,

  • Ocuco-landskapet item är variabeln som ska användas för att iterera över alla objekt i samlingen. Den är obligatorisk i For Each-satsen men valfri i Next-satsen.
  • Ocuco-landskapet data_type är data typ av elementet. Det krävs om varan inte hade deklarerats.
  • Ocuco-landskapet group är samlingen över vilken uttalanden ska upprepas. Det är ett krav.
  • Ocuco-landskapet statement(s) är valfritt. Det betecknar antingen ett eller flera satser som ska köras för varje objekt i gruppen.
  • Ocuco-landskapet Continue For kommer att överföra kontrollen till början av For Every loop. Det är valfritt.
  • Ocuco-landskapet Exit For kommer att överföra kontrollen från For Every loop. Det är valfritt.
  • Ocuco-landskapet Next markerar slutet av slingan för varje. Det är ett krav.

Hur man använder för varje loop i VB.Net

Följande exempel visar hur man använder For Each-slingan i VB.Net.

Steg 1) Skapa en ny konsolapplikation.

Steg 2) Använd följande kod:

Module Module1
    Sub Main()
        Dim myArray() As Integer = {10, 3, 12, 23, 9}
        Dim item As Integer
        For Each item In myArray
            Console.WriteLine(item)
        Next
        Console.ReadKey()
    End Sub
End Module

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

VB.Net För varje loop exempelutdata

Här är en skärmdump av koden:

VB.Net For Each loop-kodexempel

Förklaring till Code:

  1. Skapa en modul som heter Module1.
  2. Startar huvuddelproceduren.
  3. Skapa en array som heter myArray med en uppsättning av 5 heltal.
  4. Skapa en heltalsvariabel med namnet objekt.
  5. Använda objektvariabeln för att iterera över objekten i arrayen som heter myArray.
  6. Skriver ut objekten som finns i arrayen med ovanstående uttalande på konsolen.
  7. Slutet på för varje loop.
  8. Pausar konsolfönstret en stund i väntan på att en användare ska vidta åtgärder för att stänga fönstret.
  9. Slut på det huvudsakliga underförfarandet.
  10. Slutet på modulen.

Kapslad för loopar i VB.Net

For Each-loopen kan nästlas. Detta sker när vi placerar en For Each-loop inuti en annan For Each-loop. Låt oss demonstrera detta med ett exempel.

Steg 1) Skapa en ny konsolapplikation.

Steg 2) Använd följande kod:

Module Module1
    Sub Main()
        Dim nums() As Integer = {12, 23, 35}
        Dim names() As String = {"Guru99", "alice", "antony"}
        For Each n As Integer In nums
            For Each st As String In names
                Console.Write(n.ToString & st & " ")
            Next
        Next
        Console.ReadKey()
    End Sub
End Module

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

VB.Net kapslade för varje loopar utdata

Här är en skärmdump av koden:

Kodexempel för VB.Net-kapslade For Each-loopar

Förklaring av kod:

  1. Skapa en modul som heter Module1.
  2. Startar huvuddelproceduren.
  3. Skapa en array med namnet nums med en uppsättning heltal.
  4. Skapa en array med namn med en uppsättning namn.
  5. Skapa en variabel n och använda den för att iterera över objekten som finns i arrayen med namnet nums. Detta är den yttre för varje loop.
  6. Skapa en variabel med namnet st och använda den för att iterera över objekten som finns i arrayens namngivna namn. Detta är den inre för varje loop.
  7. Kombinera objekten från de två arrayerna. Varje objekt i nums-matrisen kommer att kombineras med varje objekt i names-matrisen. ToString-funktionen hjälper oss att omvandla siffror som läses från nums-arrayen till strängar. ” ” hjälper oss att skapa ett utrymme efter varje kombination. Kombinationen har uppnåtts med & (ampersand).
  8. Slutet på den inre för varje slinga.
  9. Slutet på den yttre för varje slinga.
  10. Pausa konsolfönstret och vänta på att användaren ska vidta åtgärder för att stänga det.
  11. Slut på huvuddelproceduren.
  12. Slutet på modulen.

VB.Net Avsluta för och fortsätt för uttalande

När du använder Exit For-satsen kommer exekveringen att lämna For Every … Next-slingan och kontrollen kommer att överföras till de satser som kommer efter Next-satsen.

När du använder Continue For-satsen kommer kontrollen att överföras till nästa iteration av din loop. Låt oss visa detta med ett exempel:

Steg 1) Börja med att skapa en ny konsolapplikation.

Steg 2) Använd följande kod:

Module Module1
    Sub Main()
        Dim nums() As Integer =
    {10, 12, 14, 17, 19, 23, 26, 31, 33, 37, 40, 48}
        For Each n As Integer In nums
            If n >= 17 And n <= 25 Then
                Continue For
            End If
            Console.Write(n.ToString & " ")
            If n = 37 Then
                Exit For
            End If
        Next
        Console.ReadKey()
    End Sub
End Module

Steg 3) Kör koden genom att klicka på Start-knappen från den övre raden. Du bör få följande resultat:

VB.Net Exit For och Continue For utdata

Här är en skärmdump av koden:

VB.Net Exit For och Continue For kodexempel

Förklaring till Code:

  1. Skapa en modul med namnet modul1.
  2. Startar huvuddelproceduren.
  3. Skapa en array med namnet nums med en uppsättning heltal.
  4. Genom att skapa en variabel med namnet n använder vi den för att iterera över elementen som finns i arraynumren.
  5. Använda ett If...Then-villkor för att kontrollera värdet på variabeln n. Om värdet är mellan 17 (17 inkluderade) och 25 (25 inkluderade), kommer iterationen att hoppa till nästa objekt i arrayen.
  6. Skippaping av ovanstående värden görs här. Detta är den sats som krävs för att utföra överhoppningen. Det betyder att For Each-slingan inte körs för de överhoppade objekten.
  7. Avsluta If-villkoret.
  8. Skriver ut värdena som erhållits från arrayen på konsolen. ToString-funktionen hjälper oss att konvertera värdena från tal till strängar. " " kommer att skapa lite utrymme efter varje utskrivet värde.
  9. Kontrollerar iterationsvariabeln n när dess värde är 37 med hjälp av ett If...Then-villkor.
  10. Avsluta For Every-loopen när ovanstående villkor är sant, det vill säga värdet på n=37. Detta innebär att iterationen på arrayobjekten kommer att stoppas.
  11. Slutet av ovanstående If-villkor.
  12. Slut på För … Varje påstående.
  13. Pausa konsolfönstret och vänta på att användaren ska vidta åtgärder för att stänga det.
  14. Slut på det huvudsakliga underförfarandet.
  15. Slutet på modulen.

Vanliga frågor

For Each har inget index och är skrivskyddad. For Next använder en numerisk räknare, stöder nyckelordet Step och kan ändra objekt efter position.

Nej. For Each ger bara det aktuella objektet, inte dess position. När du behöver indexet, använd en For Next-loop med en räknare.

Nej. Loopvariabeln är skrivskyddad, så du kan inte lägga till, ta bort eller omtilldela objekt under iteration. Använd en For Next-loop istället.

Alla IEnumerable-typer, inklusive en array, Lista och Dictionary. För Each använder uppräknaren internt, så en syntax läser dem alla.

Kroppen körs aldrig; körningen fortsätter efter Next. På en samling som är inställd på Nothing, utlöser For Each en NullReferenceException.

För arrayer kan For Next vara marginellt snabbare eftersom For Each lägger till enumerator-overhead. Gapet är försumbart, så föredra For Each för läsbarhet.

Ja. GitHub Copilot omvandlar en kommentar i vanlig engelska till ett komplett For Each-block. RevVisa det så att samlingen och objekttyperna matchar dina data.

Ja. Visual Studio 2026 parar ihop Copilot med IntelliCode för helrads-, kontextmedvetna For Each-kompletteringar medan du skriver.

Sammanfatta detta inlägg med: