在C#中,将
string类型转换为
int是常见的操作。以下是三种常用且实用的方法,每种都有其适用场景。
1. 使用 int.Parse() 方法
int.Parse() 是最直接的方式,适用于确定字符串内容一定是合法整数的情况。
说明: 如果字符串为null或包含非数字字符,会抛出
FormatException。
示例代码:
string str = "123"; int number = int.Parse(str); // number 的值为 123
2. 使用 Convert.ToInt32() 方法
Convert.ToInt32() 更加灵活,能处理
null值(返回 0),底层对 null 做了判断。 说明: 对于无效格式仍会抛出异常,但在处理可能为空的字符串时更安全。
示例代码:
string str = "456"; int number = Convert.ToInt32(str); // str 为 null 时返回 0,不会报错
3. 使用 int.TryParse() 方法
int.TryParse() 是推荐用于不确定输入是否合法的场景,避免异常开销。
说明: 返回布尔值表示转换是否成功,输出结果通过 out 参数获取。示例代码:
string str = "789";
if (int.TryParse(str, out int number))
{
// 转换成功,number 已赋值
}
else
{
// 转换失败,做相应处理
}
基本上就这些。如果输入来自用户或外部数据,优先使用 int.TryParse();若确定格式正确,int.Parse() 简洁高效;需要兼容 null 时可选 Convert.ToInt32()。不复杂但容易忽略细节。
