我正在寻找一个将字符串转换为可空int的函数。但是这个必须返回一个布尔值。
答案 0 :(得分:5)
这样的东西?
public int? NullableInt(string str)
{
int i;
if (int.TryParse(str, out i))
return i;
return null;
}
答案 1 :(得分:1)
这应该可以解决问题:
string str = "1234";
int number = 0;
int.TryParse(str, out number);
Nullable<int> result = new Nullable<int>(number);
答案 2 :(得分:0)
这样的事情,也许是:
public static int? TryParse(string str)
{
int result;
if (Int32.TryParse(str, out result))
{
return result;
}
else
{
return null;
}
}
如果解析失败,我们返回一个空值,否则返回成功解析的值。
答案 3 :(得分:-1)
您始终可以将string
解析为int
并将结果分配给int?
例如:
string myNumericString = "1234";
int? x = Int32.Parse(myNumericString);
您也可以尝试:
int? x = null;
int result;
if (Int32.TryParse(myNumericString, out result) )
{
x = result;
}
// Then you can check x.HasValue