3 διαφορετικοί τρόποι βρόχου σε μια λίστα C#

List<T> είναι μια από τις πιο συχνά χρησιμοποιούμενες δομές δεδομένων στη γλώσσα C#.

Η επανάληψη πάνω από την List<T> και η εκτέλεση ορισμένων πράξεων στα στοιχεία της λίστας είναι, αρκετά συνηθισμένες στα καθημερινά μας έργα.

Για να κάνουμε βρόχο σε μια λίστα στη C# μπορούμε να χρησιμοποιήσουμε 3 διαφορετικούς τρόπους.

  1. Χρησιμοποιώντας την εντολή foreach της C#.
  2. Χρησιμοποιώντας τη μέθοδο C# List.ForEach.
  3. Χρήση απλού βρόχου 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.