Sobes.tech
Junior — Middle
81

Можете объяснить, что означает метод LastOrDefault в LINQ?

Ответ от нейросети

sobes.tech AI

Метод LastOrDefault в LINQ возвращает последний элемент последовательности, удовлетворяющий заданному условию, или значение по умолчанию для типа, если таких элементов нет.

Если условие не задано, возвращается последний элемент всей последовательности или значение по умолчанию, если последовательность пуста.

Пример:

int[] numbers = {1, 2, 3, 4, 5};

int lastEven = numbers.LastOrDefault(n => n % 2 == 0); // вернёт 4
int lastGreaterThanTen = numbers.LastOrDefault(n => n > 10); // вернёт 0 (default для int)

string[] words = {};
string lastWord = words.LastOrDefault(); // вернёт null (default для string)

Таким образом, LastOrDefault безопасен для использования, когда нет гарантии, что в последовательности есть подходящие элементы, и позволяет избежать исключения InvalidOperationException, которое возникает при использовании Last на пустой последовательности.