3 különböző módja a C# listán való ciklusozásnak
List<T> a C# nyelv egyik leggyakrabban használt adatszerkezete.
A listán való ismétlés List<T> és bizonyos műveletek végrehajtása a lista elemein, elég gyakori a mindennapi projektjeinkben.
A listán való végighaladáshoz a C# nyelvben 3 különböző módszert használhatunk.
- A C#
foreachutasítás használatával. - C#
List.ForEachmódszerrel. - Egyszerű for ciklus használata.
Nézzünk végig egy példát, hogy jobban megértsük.
Először is létrehozunk egy egyszerű C# listát.
List<string> languages = new List<string>() { "C#","Asp.Net","DotNet Core"};
Most megnézzük a C# lista hurkolásának különböző módjait.
A C# foreach utasítás használata
A foreach utasítás használata egy C# lista ciklusba hurkolásához széles körben használt módszer.
A továbbiakban pedig bármilyen műveletet elvégezhetünk a lista elemein.
Az alábbi példában egy stringekből álló listát hoztam létre.
Ezután a listát a foreach segítségével végigfutattam, majd a lista elemeit a konzolon kiírtam.
///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);
}
}
Most létrehozunk egy objektumokból álló listát, és a foreach utasítás segítségével hurkot készítünk belőlük.
Definiáltunk egy Person osztályt, és létrehoztunk egy listát két személy elemmel.
List<Person> persons = new List<Person>()
{
new Person() { Id = 1, Name="Arun" },
new Person() { Id = 2, Name="Kumar"}
};
Most a foreach utasítással végighaladhatunk az objektumok listáján.
void loopListOfObjects(List<Persons> persons){
foreach(var person in persons)
{
Console.WriteLine(person.Name);
Console.WriteLine(person.Id);
}
}
A C# List.ForEach módszer használata
List<T>.ForEach metódus a List minden egyes elemén végrehajtja a megadott action értéket.
Elfogadja Action<T> delegate paramétert.
A következő példa az objektumok listáján való végighaladásra használja a Action<T> delegate.
persons.ForEach((person) =>
{
Console.WriteLine(person.Name);
Console.WriteLine(person.Id);
});
A for utasítás használata
Az örökölt for utasítást használhatjuk egy C# listán való végighaladásra, ha az index alapján bármilyen műveletet szeretnénk végrehajtani a lista elemein.
Egyébként maradjunk a foreach vagy a List<T>.ForEach() módszerekhez.
for(var i=0;i<persons.Count;i++)
{
Console.WriteLine(persons[i].Name);
Console.WriteLine(persons[i].Id);
}
Összefoglaló
Ebben a bemutatóban megtanultuk, hogyan lehet egy listán végighaladni C# nyelven a foreach, List<T.ForEach és for utasítás segítségével.