Sobes.tech
Middle

Τι σημαίνει η λέξη-κλειδί yield; Γιατί χρησιμοποιείται;

sobes.tech AI

Απάντηση από AI

Η λέξη-κλειδί yield στη C# χρησιμοποιείται για τη δημιουργία επαναληπτών — μεθόδους που επιστρέφουν στοιχεία ένα προς ένα, χωρίς να χρειάζεται να δημιουργήσουν και να επιστρέψουν ολόκληρη τη συλλογή ταυτόχρονα. Όταν καλείται μια μέθοδος με yield return, η εκτέλεση διακόπτεται, και στην επόμενη αίτηση για στοιχείο, συνεχίζει από το ίδιο σημείο.

Αυτό επιτρέπει την αποτελεσματική εργασία με μεγάλες ή πιθανώς άπειρες ακολουθίες, εξοικονομώντας μνήμη και βελτιώνοντας την απόδοση.

Παράδειγμα:

IEnumerable<int> GetNumbers()
{
    for (int i = 0; i < 5; i++)
    {
        yield return i; // επιστρέφει ένα στοιχείο κάθε φορά
    }
}

// Χρήση:
foreach (var num in GetNumbers())
{
    Console.WriteLine(num);
}