在 C# 中,null
是一个特殊的值,表示一个变量没有引用任何对象。当使用可空类型(nullable types)时,可以使用几种方法来避免空指针异常(NullReferenceException)。
?.
操作符:在访问可空类型的成员时,使用 ?.
操作符可以避免空指针异常。如果可空值为 null
,则操作符左侧的表达式将被忽略,不会引发异常。int? nullableInt = null;
int value = nullableInt?.Value; // value will be 0, because nullableInt is null
??
操作符:在表达式中,可以使用 ??
操作符为可空类型提供一个默认值。如果可空值为 null
,则表达式将返回指定的默认值。int? nullableInt = null;
int defaultValue = nullableInt ?? 0; // defaultValue will be 0, because nullableInt is null
if (nullableInt != null)
检查:在使用可空类型之前,可以使用 if
语句检查其值是否为 null
。这样可以确保在访问成员之前,可空值不为 null
。int? nullableInt = null;
if (nullableInt != null)
{
int value = nullableInt.Value;
}
else
{
// Handle the case when nullableInt is null
}
??=
为可空类型提供一个默认值。如果可空值为 null
,则表达式将把指定的默认值赋给变量。int? nullableInt = null;
nullableInt ??= 0; // nullableInt will now be 0, because it was null
遵循这些实践可以帮助您避免在使用 C# 可空类型时出现空指针异常。