J'ai deux tableaux de doubles de la même taille, contenant les valeurs X et Y de certains graphiques.
Je dois créer une sorte de protection contre les valeurs INF/NaN. Je dois trouver toutes les paires de valeurs (X, Y) pour lesquelles X et Y ne sont ni INF ni NaN.
Si j'ai un tableau, je peux le faire en utilisant des lambdas :
var filteredValues = someValues.Where(d=> !(double.IsNaN(d) || double.IsInfinity(d))).ToList();
Maintenant, pour deux tableaux, j'utilise la boucle suivante :
List<double> filteredX=new List<double>();
List<double> filteredY=new List<double>();
for(int i=0;i<XValues.Count;i++)
{
if(!double.IsNan(XValues[i]) &&
!double.IsInfinity(XValues[i]) &&
!double.IsNan(YValues[i]) &&
!double.IsInfinity(YValues[i]) )
{
filteredX.Add(XValues[i]);
filteredY.Add(YValues[i]);
}
}
Existe-t-il un moyen de filtrer deux tableaux en même temps en utilisant LINQ/lambdas, comme cela a été fait pour le tableau unique ?
Malheureusement, je ne peux utiliser que .NET 3.5.