c#语言Null检查

示例

扩展方法是静态方法,其行为类似于实例方法。但是,与在null引用上调用实例方法不同,当使用引用调用扩展方法时,扩展方法null不会抛出NullReferenceException。在某些情况下这可能非常有用。

例如,考虑以下静态类:

public static class StringExtensions
{
    public static string EmptyIfNull(this string text)
    {
        return text ?? String.Empty;
    }

    public static string NullIfEmpty(this string text)
    {
        returnString.Empty== text ? null : text;
    }
}
string nullString = null;
string emptyString = nullString.EmptyIfNull();// will return ""
string anotherNullString = emptyString.NullIfEmpty(); // 将返回null

.NET Fiddle上的实时演示