C# Language Uso semplice


Esempio

La parola chiave yield viene utilizzata per definire una funzione che restituisce un oggetto IEnumerable o IEnumerator (nonché le varianti generiche derivate) i cui valori vengono generati pigramente mentre un chiamante esegue iterazioni sulla raccolta restituita. Maggiori informazioni sullo scopo nella sezione commenti .

L'esempio seguente ha un'istruzione return return all'interno di un ciclo for .

public static IEnumerable<int> Count(int start, int count)
{
    for (int i = 0; i <= count; i++)
    {
        yield return start + i;
    }
}

Quindi puoi chiamarlo:

foreach (int value in Count(start: 4, count: 10))
{
    Console.WriteLine(value);
}

Uscita console

4
5
6
...
14

Live Demo su .NET Fiddle

Ogni iterazione del corpo foreach crea una chiamata alla funzione Count iteratore. Ogni chiamata alla funzione iteratore procede alla successiva esecuzione yield return , che si verifica durante la successiva iterazione del ciclo for .