La parola chiave yield in C#

Muhammad Maisam Abbas 16 febbraio 2024
La parola chiave yield in C#

Questo tutorial discuterà gli usi della parola chiave yield in C#.

La parola chiave yield in C#

La parola chiave yield è una parola chiave contestuale in C#. Viene utilizzato con la parola chiave return per specificare che il metodo in cui viene utilizzato è un iteratore. Il miglior utilizzo della parola chiave yield è quando stiamo iterando una lista. Con la parola chiave yield, possiamo scorrere una lista e restituire un elemento dalla lista alla funzione chiamante, quindi tornare al bucle e avviarlo dall’indice successivo. La parola chiave yield restituisce un oggetto della classe IEnumerator. Quindi, il tipo di ritorno della funzione che utilizza la parola chiave yield deve essere IEnumerator. Il seguente esempio di codice ci mostra come possiamo usare la parola chiave yield in C#.

using System;
using System.Collections.Generic;

namespace yield_keyword {
  class Program {
    static IEnumerable<string> Strings() {
      List<string> Values = new List<string> { "value1", "value2", "value3", "value4" };
      foreach (var val in Values) {
        yield return val;
      }
    }
    static void Main(string[] args) {
      foreach (var i in Strings()) {
        Console.WriteLine(i);
      }
    }
  }
}

Produzione:

value1 value2 value3 value4

Abbiamo creato una funzione Strings() che restituisce elementi della lista di stringhe Values con la parola chiave yield in C#. La parola chiave yield prende un valore dall’elenco Values, lo restituisce alla funzione chiamante, e poi continua il bucle dall’iterazione successiva se la funzione Strings() viene invocata di nuovo.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Articolo correlato - Csharp Keyword