Estoy buscando en una lista genérica para encontrar elementos basados en un parámetro determinado.Lista genérica FindAll() vs. foreach
En general, ¿cuál sería la mejor y más rápida implementación?
1. bucle a través de cada elemento de la lista y el ahorro de cada partido a una nueva lista y regresar que
foreach(string s in list)
{
if(s == "match")
{
newList.Add(s);
}
}
return newList;
O
2. Utilizando el método FindAll y pasándolo a un delegado.
newList = list.FindAll(delegate(string s){return s == "match";});
¿No funcionan ambos en ~ O (N)? ¿Cuál sería la mejor práctica aquí?
Saludos, Jonathan