答案:C#中String转int常用三种方法:1. int.Parse()适用于确定字符串为合法整数,否则抛异常;2. Convert.ToInt32()可处理NULL返回0,更安全;3. int.TryParse()推荐用于不确定输入,避免异常,返回bool并输出结果。优先使用TryParse处理外部数据。

在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()。不复杂但容易忽略细节。