Co je pro každého?
Pro každého je příkaz Looping. Toto prohlášení byste měli použít, když potřebujete opakovat 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.
V tomto VB. Výukový program pro síť, naučíte se
- Co je pro každého?
- Syntaxe pro každý… Další
- Příklady
- Vnořeno pro smyčky
- Ukončete a pokračujte
Syntaxe pro každý… Další
Příkaz pro každý příkaz má níže uvedenou syntaxi:
For Each item [ As data_type ] In group[ statement(s) ][ Continue For ][ statement(s) ][ Exit For ][ statement(s) ]Next [ item ]
Tady,
- Položka je proměnná, která bude použita k iteraci nad všemi položkami kolekce. Je vyžadováno v pro každý příkaz, ale volitelné v dalším příkazu.
- Data_type je datový typ prvku. Vyžaduje se, pokud položka nebyla deklarována.
- Skupina je kolekce, ve které se příkazy mají opakovat. Je vyžadováno.
- Prohlášení je nepovinné. Označuje jeden nebo více příkazů, které mají být provedeny pro každou položku ve skupině.
- Možnost Pokračovat pro přenese řízení na začátek Pro každou smyčku. Je to volitelné.
- Exit For přenese ovládání z For each loop. Je to volitelné.
- Další označuje konec smyčky For each. Je vyžadováno.
Příklady
Ukážeme, jak použít toto prohlášení:
Krok 1) Začněte vytvořením nové konzolové aplikace.
Krok 2) Použijte následující kód:
Module Module1Sub Main()Dim myArray() As Integer = {10, 3, 12, 23, 9}Dim item As IntegerFor Each item In myArrayConsole.WriteLine(item)NextConsole.ReadKey()End SubEnd Module
Krok 3) Kliknutím na tlačítko Start na horním panelu spustíte kód. Měli byste získat následující výsledek:
Zde je snímek obrazovky s kódem:
Vysvětlení kódu:
- Vytváření modulu s názvem Module1.
- Zahájení hlavního dílčího postupu.
- Vytvoření pole s názvem myArray se sadou 4 celých čísel.
- Vytváření celočíselné proměnné s názvem položky.
- Použití proměnné item k iteraci nad položkami pole s názvem myArray.
- Tisk položek nalezených v poli výše uvedeným příkazem na konzole.
- Konec smyčky For each.
- Pozastavením okna konzoly na chvíli čekáte, než uživatel zavře okno.
- Konec hlavního dílčího postupu.
- Konec modulu.
Vnořeno pro smyčky
Smyčku For each lze vnořit. K tomu dojde, když vložíme jednu za každou smyčku do jiné za každou smyčku. Ukážeme to na příkladu.
Krok 1) Vytvořte novou konzolovou aplikaci.
Krok 2) Použijte následující kód:
Module Module1Sub Main()Dim nums() As Integer = {12, 23, 35}Dim names() As String = {"Guru99", "alice", "antony"}For Each n As Integer In numsFor Each st As String In namesConsole.Write(n.ToString & st & " ")NextNextConsole.ReadKey()End SubEnd Module
Krok 3) Klepnutím na tlačítko Start na horní liště spustíte kód. Měli byste získat následující výstup:
Zde je snímek obrazovky s kódem:
Vysvětlení kódu:
- Vytváření modulu s názvem Module1.
- Zahájení 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 nad položkami obsaženými 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 nad položkami obsaženými 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 jmen. Funkce ToString nám pomáhá převádět čísla načtená z pole nums na řetězce. Symbol „“ nám pomáhá vytvořit prostor po každé kombinaci. Kombinace bylo dosaženo pomocí & (ampersand).
- Konec vnitřního Pro každou smyčku.
- Konec vnějšího pro každou smyčku.
- Pozastavte okno konzoly a čekejte, až uživatel zavře okno.
- Konec hlavního dílčího postupu.
- Konec modulu.
Ukončete a pokračujte
Když použijete příkaz Exit For, provedení opustí For each
… Další smyčka a řízení budou přeneseny do příkazů, které následují za příkazem Další.Když použijete příkaz Pokračovat pro, ovládací prvek se přenese na další iteraci vaší smyčky. Ukážeme 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 Module1Sub Main()Dim nums() As Integer ={10, 12, 14, 17, 19, 23, 26, 31, 33, 37, 40, 48}For Each n As Integer In numsIf n>= 17 And n <= 25 ThenContinue ForEnd IfConsole.Write(n.ToString & " ")If n = 37 ThenExit ForEnd IfNextConsole.ReadKey()End SubEnd Module
Krok 3) Spusťte kód kliknutím na tlačítko Start na horní liště. Měli byste získat následující výsledek:
Zde je snímek obrazovky s kódem:
Vysvětlení kódu:
- Vytvoření modulu s názvem module1.
- Zahájení hlavního dílčího postupu.
- Vytvoření pole s názvem nums se sadou celých čísel.
- Vytvoření proměnné s názvem n ji pak použijeme k iteraci prvků obsažených v číslech pole.
- 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 přeskakují výše uvedené hodnoty. Toto je prohlášení nezbytné pro provedení přeskočení. To znamená, že smyčka For each nebude fungovat pro přeskočené položky.
- 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. Symbol „“ vytvoří po každé vytištěné hodnotě mezeru.
- Kontrola iterační proměnné n, když je její hodnota 37, pomocí podmínky If… Then.
- Opuštění smyčky For Every, když je splněna 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é prohlášení.
- Pozastavte okno konzoly a čekejte, až uživatel zavře okno.
- Konec hlavního dílčího postupu.
- Konec modulu.
souhrn
- Příkaz For Each se používá k iteraci nad každou položkou obsaženou 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, jak se iterace provádí.