在 C# 中,可以使用 ?
符号来定义可空类型(nullable type)。可空类型表示该类型的变量可以包含一个值,也可以不包含任何值(即空值)。这允许在代码中更灵活地处理可能为空的值。
定义可空类型的方法是在数据类型后面加上 ?
符号。例如:
int? nullableInt = null; // 定义一个可空的整型变量 string? nullableString = null; // 定义一个可空字符串变量
在上面的示例中,nullableInt
和 nullableString
都是可空类型,它们可以包含一个整数值或字符串值,也可以不包含任何值(即空值)。
需要注意的是,当定义一个可空类型时,它实际上是一个结构体类型,而不是引用类型。这意味着可空类型可以参与所有的结构体操作,包括值传递和引用传递。
此外,在使用可空类型时,可以使用 ??
运算符来处理可能为空的值。例如:
int? nullableInt = null; int nonNullableInt = nullableInt ?? 0; // 如果 nullableInt 为空,则将 nonNullableInt 设置为 0
在上面的示例中,如果 nullableInt
为空,则 nonNullableInt
将被设置为 0。