Sdílet prostřednictvím


for (Referenční dokumentace jazyka C#)

Pomocí for smyčky, můžete spustit příkaz nebo blok příkazů opakovaně dokud zadaný výraz vyhodnocen jako false.Tento druh smyčky je užitečné pro iterování polí a jiných aplikací, ve kterých víte předem kolikrát chcete iteraci smyčky.

Příklad

V následujícím příkladu hodnotu i je zapsána do konzoly a zvětší o 1 při každém opakování smyčky.

class ForLoopTest 
{
    static void Main() 
    {
        for (int i = 1; i <= 5; i++)
        {
            Console.WriteLine(i);
        }
    }
}
/*
Output:
1
2
3
4
5
*/

for Prohlášení v předchozím příkladu provede následující akce.

  1. První, počáteční hodnota proměnné i je usazen.Tento krok dojde pouze jednou, bez ohledu na to, jak mnohokrát uvádění opakujícího smyčky.Tato inicializace můžete představit jako situaci mimo proces opakování.

  2. Vyhodnotit podmínku (i <= 5), hodnota i je ve srovnání s 5.

    • Pokud i je menší nebo rovna 5, bude podmínka vyhodnocena jako true, a dojde k následujícím akcím.

      1. Console.WriteLine Příkaz do těla smyčky se zobrazí hodnota i.

      2. Hodnota i zvětší o 1.

      3. Smyčky vrátí na začátek kroku 2 znovu vyhodnotit podmínku.

    • Pokud i je větší než 5, bude podmínka vyhodnocena jako false, a ukončení smyčky.

Všimněte si, že pokud počáteční hodnotu i je větší než 5, tělo smyčky ještě jednou spustit.

Každý for příkaz definuje oddíly inicializátor, podmínka a iterace.Tyto oddíly jsou obvykle určí počet iterací smyčky.

for (initializer; condition; iterator)
    body

Oddíly slouží k následujícím účelům.

  • Inicializátor oddíl nastaví počáteční podmínky.Příkazy v této části před zadejte smyčky spustit pouze jednou.Oddíl může obsahovat pouze jednu z následujících dvou možností.

    • Deklaraci a inicializaci proměnné účastnického vedení, jako v prvním příkladu (int i = 1).Proměnná je místní smyčky a nelze získat přístup z mimo smyčky.

    • Nula nebo prohlášení expressons z následujícího seznamu, oddělené čárkami.

      • přiřazení prohlášení

      • vyvolání metody

      • Předpona nebo postfixový Přírůstek výraz, jako například ++i neboi++

      • Předpona nebo postfixový trase výraz, jako například --i neboi--

      • Vytvoření objektu pomocí Nový

      • očekávat výraz

  • Podmínka oddíl obsahuje logický výraz, který je vyhodnocen, zda má ukončit smyčky, nebo měli spustit znovu.

  • Iterátor část definuje, co se stane po každé iteraci smyčky subjektu.Oddíl iterátor obsahuje nula nebo více následujících výrazů prohlášení oddělené čárkami:

    • přiřazení prohlášení

    • vyvolání metody

    • Předpona nebo postfixový Přírůstek výraz, jako například ++i neboi++

    • Předpona nebo postfixový trase výraz, jako například --i neboi--

    • Vytvoření objektu pomocí Nový

    • očekávat výraz

  • Tělo smyčky se skládá z výpisu, prázdný příkaz nebo blok příkazů, které vytvářejí uzavřením nula nebo více příkazů do složených závorek.

    Můžete přerušit z for pomocí smyčky Konec klíčové slovo, nebo krok na další iteraci pomocí pokračovat klíčové slovo.Je také možné ukončit všechny smyčky pomocí goto, vrátit, nebo vyvolat prohlášení.

První příklad v tomto tématu ukazuje nejtypičtější druh for provede následující volby pro oddíly smyčky.

  • Inicializačním deklaruje a inicializuje proměnnou vedení i, který udržuje počet iterací smyčky.

  • Kontroluje podmínku hodnotu proměnné smyčka proti známým konečná hodnota 5.

  • Oddíl iterátor používá příkaz Příponové přírůstek, i++, zaznamenávat každou iteraci smyčky.

Následující příklad ukazuje několik méně běžné volby: přiřazení hodnoty proměnné vnější smyčky v části inicializátor, vyvolání Console.WriteLine metoda jak inicializátoru a oddíly iterátor a změna hodnoty dvou proměnných v části iterátor.

static void Main()
 {
     int i;
     int j = 10;
     for (i = 0, Console.WriteLine("Start: {0}",i); i < j; i++, j--, Console.WriteLine("i={0}, j={1}", i, j))
     {
         // Body of the loop.
     }
 }
 // Output: 
 // Start: 0 
 // i=1, j=9 
 // i=2, j=8 
 // i=3, j=7 
 // i=4, j=6 
 // i=5, j=5

Všechny výrazy, které definují for prohlášení jsou volitelné.Například následující příkaz vytvoří nekonečnou smyčku.

for (; ; )
{
    // ...
}

Specifikace jazyka C#

Další informace najdete v tématu Specifikace jazyka C#. Specifikace jazyka je úplným a rozhodujícím zdrojem pro syntaxi a použití jazyka C#.

Viz také

Referenční dokumentace

Klíčová slova jazyka C#

foreach, in (Referenční dokumentace jazyka C#)

for – příkaz (C++)

Příkazy iterace (Referenční dokumentace jazyka C#)

Koncepty

Průvodce programováním v C#

Další zdroje

Referenční dokumentace jazyka C#