FirstOrDefault
是 C# 中的一個 LINQ 方法,用于從集合(如列表、數組等)中查找并返回第一個滿足指定條件的元素。如果沒有找到滿足條件的元素,則返回集合中的默認值。
FirstOrDefault
可以處理任何實現了 IEnumerable
接口的集合類型,例如 List<T>
、HashSet<T>
、Dictionary<TKey, TValue>
等。對于引用類型,默認值為 null
;對于值類型,默認值為類型的默認構造值(例如,對于 int
類型,默認值為 0
)。
下面是一些使用 FirstOrDefault
的示例:
// 示例 1:查找列表中的第一個偶數
List<int> numbers = new List<int> { 1, 3, 5, 7, 9 };
int firstEven = numbers.FirstOrDefault(n => n % 2 == 0);
Console.WriteLine(firstEven); // 輸出:2
// 示例 2:查找字典中鍵為 "key1" 的值
Dictionary<string, string> dictionary = new Dictionary<string, string> { { "key1", "value1" }, { "key2", "value2" } };
string value = dictionary.FirstOrDefault(kvp => kvp.Key == "key1");
Console.WriteLine(value); // 輸出:value1
// 示例 3:查找數組中的第一個浮點數
double[] numbersArray = { 1.1, 2.2, 3.3, 4.4 };
double firstDouble = numbersArray.FirstOrDefault(n => n is double);
Console.WriteLine(firstDouble); // 輸出:1.1