Скажем, у меня есть простой массив:
double[] myDoubleArray = new double[] { 0, 1, 2, 3, 4, 5 };
Это как исполнитель:
double last = myDoubleArray.Last();
как это?
double last = myDoubleArray[myDoubleArray.Length - 1];
Будет ли Last() перечислить весь массив, даже если он может сделать вышеуказанную оптимизацию?
Если бы я передал некоторый другой IEnumerable (скажем, тот, который был получен), Last() должен был бы перечислить последовательность. Я предпочитаю использовать Last(), потому что код выглядит более чистым, но я бы не стал жертвовать, если он перечисляет последовательность.