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.