如何在 C# 中将字符串解析为可空整数?
C# 提供了特殊数据类型(可空类型),可以为它分配正常范围的值以及空值。
C# 2.0 引入了可空类型,允许为值类型变量分配 null。可以使用 Nullable 声明可空类型,其中 T 为类型。
可空类型只能用于值类型。
如果值为 null,Value 属性将抛出 InvalidOperationException;否则它将返回该值。
HasValue 属性在变量包含值时返回 true,或在为空时返回 false。
仅可对可空类型使用 == 和 != 运算符。对于其他比较,使用 Nullable 静态类。
不允许嵌套可空类型。Nullable<Nullable<int>> i; 将产生编译时错误。
示例 1
static class Program{
static void Main(string[] args){
string s = "123";
System.Console.WriteLine(s.ToNullableInt());
Console.ReadLine();
}
static int? ToNullableInt(this string s){
int i;
if (int.TryParse(s, out i)) return i;
return null;
}
}输出
123
将 Null 传递到扩展方法时不会打印任何值
static class Program{
static void Main(string[] args){
string s = null;
System.Console.WriteLine(s.ToNullableInt());
Console.ReadLine();
}
static int? ToNullableInt(this string s){
int i;
if (int.TryParse(s, out i)) return i;
return null;
}
}输出
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP