3 διαφορετικοί τρόποι βρόχου σε μια λίστα C#
List<T> είναι μια από τις πιο συχνά χρησιμοποιούμενες δομές δεδομένων στη γλώσσα C#.
Η επανάληψη πάνω από την List<T> και η εκτέλεση ορισμένων πράξεων στα στοιχεία της λίστας είναι, αρκετά συνηθισμένες στα καθημερινά μας έργα.
Για να κάνουμε βρόχο σε μια λίστα στη C# μπορούμε να χρησιμοποιήσουμε 3 διαφορετικούς τρόπους.
- Χρησιμοποιώντας την εντολή foreachτης C#.
- Χρησιμοποιώντας τη μέθοδο C# List.ForEach.
- Χρήση απλού βρόχου for.
Ας δούμε ένα παράδειγμα για να το κατανοήσουμε καλύτερα.
Πρώτα θα δημιουργήσουμε μια απλή λίστα C#.
List<string> languages = new List<string>() { "C#","Asp.Net","DotNet Core"};
Τώρα θα δούμε διαφορετικούς τρόπους για να βιδώσουμε μια λίστα C#.
Χρήση της εντολής foreach της C# 
Η χρήση της δήλωσης foreach για να κάνετε βρόχο σε μια λίστα C# είναι μια ευρέως χρησιμοποιούμενη μέθοδος.
Και επιπλέον μπορούμε να εκτελέσουμε οποιαδήποτε λειτουργία στα στοιχεία της λίστας.
Στο παρακάτω παράδειγμα έχω δημιουργήσει μια λίστα με συμβολοσειρές.
Στη συνέχεια, η επανάληψη αυτής της λίστας με τη χρήση του foreach και περαιτέρω η εκτύπωση των στοιχείων της λίστας στην κονσόλα.
///Method to Loop C# list
void loopList()
{
   List<string> languages = new List<string>() { "C#","Asp.Net","DotNet Core"};
   
   foreach (string lang in languages)
   {
        Console.WriteLine(lang);
   }
}
Τώρα θα δημιουργήσουμε μια λίστα αντικειμένων και θα τα βιδώσουμε χρησιμοποιώντας την εντολή foreach.
Ορίσαμε μια κλάση Person και δημιουργήσαμε μια λίστα με δύο στοιχεία ατόμων.
List<Person> persons = new List<Person>() 
{ 
      new Person() { Id = 1, Name="Arun" },
      new Person() { Id = 2, Name="Kumar"} 
};
Τώρα μπορούμε να χρησιμοποιήσουμε την εντολή foreach για να κάνουμε βρόχο στη λίστα των αντικειμένων.
void loopListOfObjects(List<Persons> persons){
 foreach(var person in persons)
    {
        Console.WriteLine(person.Name);            
        Console.WriteLine(person.Id);
    }
}
Χρήση της μεθόδου C# List.ForEach 
List<T>.ForEach μέθοδος εκτελεί το δεδομένο action σε κάθε στοιχείο της λίστας.
Δέχεται Action<T> παράμετρο delegate.
Το ακόλουθο παράδειγμα κάνει βρόχο στη λίστα των αντικειμένων χρησιμοποιώντας Action<T> delegate.
persons.ForEach((person) =>
    {
        Console.WriteLine(person.Name);
        Console.WriteLine(person.Id);
    });
Χρήση της εντολής for 
Μπορούμε να χρησιμοποιήσουμε τη δήλωση for για να κάνουμε βρόχο σε μια λίστα της C#, αν θέλουμε να εκτελέσουμε οποιαδήποτε ενέργεια στα στοιχεία της λίστας με βάση το δείκτη.
Διαφορετικά, χρησιμοποιήστε τις εντολές foreach ή List<T>.ForEach() μεθόδους.
for(var i=0;i<persons.Count;i++)
    {
        Console.WriteLine(persons[i].Name);
        Console.WriteLine(persons[i].Id);
    }
Περίληψη
Σε αυτό το σεμινάριο μάθαμε, πώς να κάνουμε βρόχο σε μια λίστα στη C# χρησιμοποιώντας τις εντολές foreach, List<T.ForEach και for.