First()
假设有一个元素,FirstOrDefault()
默认为类型的默认值。 FirstOr(myDefault)
我们想提供自定义默认值呢?
没有这样的方法,但你当然可以自己实现。为此,您可以调用
FirstOrDefault
然后检查它是否返回 null
并改用您自己的值。你可以这样做:
var value = list.FirstOrDefault() ?? yourDefault;
您可以像这样将其封装在自己的扩展方法中:
public static class EnumerableExtensions
{
public static T FirstOrDefault<T>(this IEnumerable<T> source, T defaultValue)
{
return source.FirstOrDefault() ?? defaultValue;
}
}
你显然可以对其他重载做类似的事情。