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#
foreach
utasítás használatával. - C#
List.ForEach
mó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.