filtrer un tableau en C#
j'ai un tableau d'objets (Car [] par exemple) et il y a une propriété IsAvailable sur l'objet
Je veux utiliser le tableau complet (où IsAvailable est vrai pour certains éléments et faux pour d'autres) comme entrée et renvoyer un nouveau tableau qui inclut uniquement les éléments qui ont IsAvailable = true.
Solution du problème
Si vous utilisez C# 3.0 ou supérieur...
using System.Linq;
public Car[] Filter(Car[] input)
{
return input.Where(c => c.IsAvailable).ToArray();
}
Et si vous n'avez pas accès à LINQ (vous utilisez une ancienne version de.NET)...
public Car[] Filter(Car[] input)
{
List<Car> availableCars = new List<Car>();
foreach(Car c in input)
{
if(c.IsAvailable)
availableCars.Add(c);
}
return availableCars.ToArray();
}
Commentaires
Enregistrer un commentaire