es la siguiente:¿Es Linq más rápido, más lento o lo mismo?
Box boxToFind = AllBoxes.FirstOrDefault(box => box.BoxNumber == boxToMatchTo.BagNumber);
más rápido o más lento que esto:
Box boxToFind ;
foreach (Box box in AllBoxes)
{
if (box.BoxNumber == boxToMatchTo.BoxNumber)
{
boxToFind = box;
}
}
Ambos me dan el resultado Busco (boxToFind
). Esto se ejecutará en un dispositivo móvil que necesito ser consciente del rendimiento.
Su primer método no se compilará. Donde devuelve un IEnumerable. Para ser equivalente al último, tendrías que hacer AllBoxes.Last (box => ...) –
Buen punto. Cambié mi primer método. (Aunque no utilicé el último, porque "debería" tener solo valores únicos) – Vaccano
Se compilará el segundo método, pero le dará el último cuadro que coincida. Pon un descanso; cuando salgas del if. – Rubys