VB.Net for hver…Næste, Afslut, Fortsæt-sætning

⚡ Smart opsummering

VB.Net For Each er et toiletping en sætning, der gentager en kodeblok én gang for hvert element i et array eller en samling, så du kan læse hvert element efter tur uden trackonge et indeks.

  • 🔁 Formål: Gentag sætninger én gang for hvert element i en samling eller et array.
  • 🧩 Syntaks: Løkken løber fra For Each … In til en matchende Next-sætning.
  • 📚 Samlinger: For Each iterererer enhver IEnumerable-type, såsom arrays, List og Dictionary.
  • 🪆 Indlejring: En For Hver indeni en anden parrer hver ydre genstand med hver indre genstand.
  • Flowkontrol: Exit For forlader løkken; Continue For springer til næste element.
  • 🤖 AI-hjælp: GitHub Copilot og IntelliCode I Visual Studio 2026 skal du fuldføre For Each-løkker, mens du skriver.

VB.Net for hver sløjfe

VB.Net for hver sløjfe

VB.Net For Each er et toiletping sætning. Du bør bruge denne sætning, når du skal gentage et sæt sætninger for hvert element, du har i en samling. Du kan bruge den til at manipulere alle elementerne i en samling eller et array.

Syntaks for VB.Net for hver... Næste erklæring

VB.Net For hver sætning anvendes syntaksen nedenfor:

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

Her,

  • item er den variabel, der skal bruges til at iterere over alle elementer i samlingen. Den er obligatorisk i For Each-sætningen, men valgfri i Next-sætningen.
  • data_type er datatype af elementet. Det er påkrævet, hvis varen ikke var deklareret.
  • group er den samling, som udsagn skal gentages over. Det er påkrævet.
  • statement(s) er valgfrit. Det angiver enten en eller flere sætninger, der skal udføres for hvert element i gruppen.
  • Continue For vil overføre kontrollen til begyndelsen af ​​For Every loop. Det er valgfrit.
  • Exit For vil overføre kontrol ud af For Every loop. Det er valgfrit.
  • Next markerer slutningen af ​​For Every loop. Det er påkrævet.

Sådan bruges til hver sløjfe i VB.Net

Følgende eksempel viser, hvordan man bruger For Each-løkken i VB.Net.

Trin 1) Opret en ny konsolapplikation.

Trin 2) Brug følgende kode:

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

Trin 3) Klik på Start-knappen i den øverste bjælke for at køre koden. Du bør få følgende resultat:

VB.Net For Each loop eksempeloutput

Her er et skærmbillede af koden:

Eksempel på VB.Net For Each-løkkekode

Forklaring af Code:

  1. Oprettelse af et modul ved navn Modul1.
  2. Start af hovedunderproceduren.
  3. Oprettelse af et array ved navn myArray med et sæt på 5 heltal.
  4. Oprettelse af en heltalsvariabel med navnet element.
  5. Brug af elementvariablen til at iterere over elementerne i arrayet kaldet myArray.
  6. Udskrivning af de elementer, der findes i arrayet ved ovenstående erklæring på konsollen.
  7. Slutningen af ​​For Every loop.
  8. Sætter konsolvinduet på pause i et stykke tid og venter på, at en bruger foretager handling for at lukke vinduet.
  9. Afslutning af hovedunderproceduren.
  10. Slut på modulet.

Indlejret for loops i VB.Net

For Each-løkken kan indlejres. Dette sker, når vi placerer en For Each-løkke inden i en anden For Each-løkke. Lad os demonstrere dette ved hjælp af et eksempel.

Trin 1) Opret en ny konsolapplikation.

Trin 2) Brug følgende kode:

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

Trin 3) Klik på knappen Start fra den øverste bjælke for at udføre koden. Du bør få følgende output:

VB.Net indlejret For Each-løkker output

Her er et skærmbillede af koden:

Eksempel på kode til indlejrede VB.Net-løkker

Forklaring af kode:

  1. Oprettelse af et modul ved navn Modul1.
  2. Start af hovedunderproceduren.
  3. Oprettelse af en matrix ved navn nums med et sæt heltal.
  4. Oprettelse af et array med navne med et sæt navne.
  5. Oprettelse af en variabel n og brug af den til at iterere over de elementer, der er indeholdt i arrayet med navnet nums. Dette er den ydre For Every loop.
  6. Oprettelse af en variabel ved navn st og brug af den til at iterere over de elementer, der er indeholdt i arrayet navngivne navne. Dette er den indre For Hver sløjfe.
  7. Kombinere elementerne fra de to arrays. Hvert element i nums-arrayet vil blive kombineret med hvert element i nums-arrayet. ToString-funktionen hjælper os med at konvertere de tal, der læses fra nums-arrayet, til strenge. " " hjælper os med at skabe et rum efter hver kombination. Kombinationen er opnået ved hjælp af & (ampersand).
  8. Enden af ​​den indre For Hver sløjfe.
  9. Enden af ​​den ydre For Hver sløjfe.
  10. Sæt konsolvinduet på pause, mens du venter på, at brugeren foretager handling for at lukke det.
  11. Afslutning af hovedunderproceduren.
  12. Slut på modulet.

VB.Net Afslut for og fortsæt for erklæring

Når du bruger Exit For-sætningen, vil udførelsen forlade For Every … Next-løkken, og kontrol vil blive overført til de sætninger, der kommer efter Next-sætningen.

Når du bruger Continue For-sætningen, vil kontrollen blive overført til næste iteration af din loop. Lad os demonstrere dette ved hjælp af et eksempel:

Trin 1) Begynd med at oprette en ny konsolapplikation.

Trin 2) Brug følgende kode:

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

Trin 3) Kør koden ved at klikke på Start-knappen fra den øverste bjælke. Du bør få følgende resultat:

VB.Net Exit For og Continue For output

Her er et skærmbillede af koden:

VB.Net Exit For og Continue For kodeeksempel

Forklaring af Code:

  1. Oprettelse af et modul ved navn modul1.
  2. Start af hovedunderproceduren.
  3. Oprettelse af en matrix ved navn nums med et sæt heltal.
  4. Når vi opretter en variabel ved navn n, bruger vi den til at iterere over elementerne indeholdt i arraynumrene.
  5. Brug af en If...Then-betingelse for at kontrollere værdien af ​​variablen n. Hvis værdien er mellem 17 (17 inkluderet) og 25 (25 inkluderet), vil iterationen springe til næste element i arrayet.
  6. Skippetping af ovenstående værdier udføres her. Dette er den nødvendige sætning for at udføre overspringningen. Det betyder, at For Each-løkken ikke kører for de oversprungne elementer.
  7. Afslut hvis betingelsen.
  8. Udskrivning af værdier opnået fra arrayet på konsollen. ToString-funktionen hjælper os med at konvertere værdierne fra tal til strenge. " " vil skabe lidt plads efter hver udskrevne værdi.
  9. Kontrol af iterationsvariablen n for, hvornår dens værdi er 37 ved hjælp af en If…Then-betingelse.
  10. Afslutning af For Each-løkken, når ovenstående betingelse er sand, dvs. værdien af ​​n=37. Det betyder, at iterationen på array-elementerne stopper.
  11. Slut på ovenstående Hvis betingelse.
  12. Slutningen af ​​For ... Hver erklæring.
  13. Sæt konsolvinduet på pause, mens du venter på, at brugeren foretager handling for at lukke det.
  14. Afslutning af hovedunderproceduren.
  15. Slut på modulet.

Ofte Stillede Spørgsmål

For Each har intet indeks og er skrivebeskyttet. For Next bruger en numerisk tæller, understøtter nøgleordet Step og kan ændre elementer efter position.

Nej. For Each giver kun det aktuelle element, ikke dets position. Når du har brug for indekset, skal du bruge en For Next-løkke med en tæller.

Nej. Løkkevariablen er skrivebeskyttet, så du kan ikke tilføje, fjerne eller omfordele elementer under iteration. Brug i stedet en For Next-løkke.

Enhver IEnumerable-type, inklusive en matrix, Liste og Ordbog. For hver bruger tælleren internt, så én syntaks læser dem alle.

Kroppen kører aldrig; udførelsen fortsætter efter Next. På en samling, der er indstillet til Nothing, kaster For Each en NullReferenceException.

For arrays kan For Next være marginalt hurtigere, fordi For Each tilføjer enumerator-overhead. Gabet er ubetydeligt, så For Each foretrækkes af hensyn til læsbarhed.

Ja. GitHub Copilot omdanner en kommentar på almindeligt engelsk til en komplet For Each-blok. RevSe det, så samlingen og elementtyperne matcher dine data.

Ja. Visual Studio 2026 parrer Copilot med IntelliCode for hellinjede, kontekstbevidste For Each-fuldførelser, mens du skriver.

Opsummer dette indlæg med: