VB.Net For Each…Next, Exit, Continue Prohlášení s příklady
VB.Net pro každou smyčku
VB.Net For Each je příkaz Looping. Tento příkaz byste měli použít, když potřebujete zopakovat sadu příkazů pro každou položku, kterou máte v kolekci. Můžete jej použít k manipulaci se všemi prvky obsaženými v kolekci nebo poli.
Syntaxe VB.Net For Each… Další příkaz
Jedno VB.NET pro každý příkaz má syntaxi uvedenou níže:
For Each item [ As data_type ] In group [ statement(s) ] [ Continue For ] [ statement(s) ] [ Exit For ] [ statement(s) ] Next [ item ]
Zde,
- Jedno
item
je proměnná, která bude použita k iteraci přes všechny položky kolekce. Je vyžadováno v pro každý příkaz, ale nepovinné v dalším příkazu. - Jedno
data_type
je datový typ prvku. Je vyžadováno, pokud položka nebyla deklarována. - Jedno
group
je kolekce, nad kterou se mají příkazy opakovat. Je vyžadováno. - Jedno
statement(s)
je volitelný. Označuje jeden nebo více příkazů, které se mají provést pro každou položku ve skupině. - Jedno
Continue For
přenese řízení na začátek cyklu For Each. Je to nepovinné. - Jedno
Exit For
převede řízení mimo smyčku For Each. Je to nepovinné. - Jedno
Next
označuje konec smyčky For Each. Je vyžadováno.
Jak používat pro každou smyčku ve VB.Net
Následující příklad ukazuje, jak použít For Each Loop In VB.Net
Krok 1) Vytvořte novou konzolovou aplikaci
Začněte vytvořením nové konzolové aplikace.
Krok 2) Použijte následující kód
Pomocí následujícího kódu se naučíte pro každou smyčku ve VB.Net
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
Krok 3) Klepněte na tlačítko Start
Kliknutím na tlačítko Start v horní liště spustíte kód. Měli byste získat následující výsledek:
Zde je snímek obrazovky kódu:
Vysvětlení kódu:
- Vytvoření modulu s názvem Module1.
- Spuštění hlavního dílčího postupu.
- Vytvoření pole s názvem myArray se sadou 4 celých čísel.
- Vytvoření celočíselné proměnné s názvem item.
- Použití proměnné item k iteraci přes položky pole s názvem myArray.
- Tisk položek nalezených v poli výše uvedeným příkazem na konzole.
- Konec pro každou smyčku.
- Pozastavení okna konzoly na chvíli a čekání, až uživatel provede akci a okno zavře.
- Konec hlavního dílčího postupu.
- Konec modulu.
Vnořeno pro smyčky ve VB.Net
Smyčku For Each lze vnořit. K tomu dojde, když vložíme jednu smyčku For Each do jiné smyčky For Each. Ukažme si to na příkladu.
Krok 1) Vytvořte novou konzolovou aplikaci.
Krok 2) Použijte následující kód:
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
Krok 3) Kliknutím na tlačítko Start v horní liště spustíte kód. Měli byste získat následující výstup:
Zde je snímek obrazovky kódu:
Vysvětlení kódu:
- Vytvoření modulu s názvem Module1.
- Spuštění hlavního dílčího postupu.
- Vytvoření pole s názvem nums se sadou celých čísel.
- Vytvoření pole pojmenovaných jmen se sadou jmen.
- Vytvoření proměnné n a její použití k iteraci položek obsažených v poli s názvem nums. Toto je vnější smyčka For Each.
- Vytvoření proměnné s názvem st a její použití k iteraci položek obsažených v poli s názvem names. Toto je vnitřní smyčka For Each.
- Kombinace položek ze dvou polí. Každá položka v poli nums bude kombinována s každou položkou v poli názvů. Funkce ToString nám pomáhá převádět čísla načtená z pole nums na řetězce. „ “ nám pomáhá vytvořit prostor po každé kombinaci. Kombinace bylo dosaženo pomocí & (ampersand).
- Konec vnitřní smyčky For Each.
- Konec vnější smyčky For Each.
- Pozastavte okno konzoly a počkejte, až uživatel provede akci k jeho zavření.
- Konec hlavního dílčího postupu.
- Konec modulu.
VB.Net Exit For a Continue For Statement
Když použijete příkaz Exit For, provedení opustí smyčku For Each… Next a řízení se přenese na příkazy, které následují po příkazu Next.
Když použijete příkaz Continue For, řízení se přenese do další iterace vaší smyčky. Ukažme si to na příkladu:
Krok 1) Začněte vytvořením nové konzolové aplikace.
Krok 2) Použijte následující kód:
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
Krok 3) Spusťte kód kliknutím na tlačítko Start v horní liště. Měli byste získat následující výsledek:
Zde je snímek obrazovky kódu:
Vysvětlení kódu:
- Vytvoření modulu s názvem module1.
- Spuštění hlavního dílčího postupu.
- Vytvoření pole s názvem nums se sadou celých čísel.
- Když vytvoříme proměnnou s názvem n, použijeme ji k iteraci prvků obsažených v poli nums.
- Použití podmínky If…Then ke kontrole hodnoty proměnné n. Pokud je hodnota mezi 17 (včetně 17) a 25 (včetně 25), iterace přeskočí na další položku v poli.
- Zde se provádí přeskakování výše uvedených hodnot. Toto je příkaz nezbytný pro provedení přeskočení. To znamená, že pro vynechané položky se cyklus For Each nespustí.
- Ukončete podmínku If.
- Tisk hodnot získaných z pole na konzole. Funkce ToString nám pomáhá převádět hodnoty z čísel na řetězce. „ “ vytvoří mezeru po každé vytištěné hodnotě.
- Kontrola iterační proměnné n, když je její hodnota 37, pomocí podmínky If…Then.
- Ukončení cyklu For Each, když platí výše uvedená podmínka, tj. hodnota n=37. To znamená, že iterace na položkách pole se zastaví.
- Konec výše uvedené podmínky If.
- Konec For … Každý příkaz.
- Pozastavte okno konzoly a počkejte, až uživatel provede akci k jeho zavření.
- Konec hlavního dílčího postupu.
- Konec modulu.
Shrnutí
- Příkaz For Each se používá k iteraci každé položky obsažené v kolekci nebo poli.
- Během vývoje můžete kombinovat příkazy For Each s příkazy Exit For a Continue For a řídit tak, jak se iterace provádí.