📜  c# 如何将字符串转换为 int - C# (1)

📅  最后修改于: 2023-12-03 14:39:45.959000             🧑  作者: Mango

C# 如何将字符串转换为 int

在 C# 中将字符串转换为整数类型(int)可以使用多种方法。下面将介绍几种常用的转换方式。

1. 使用 Int32.TryParse 方法
string str = "123";
int result;
if (Int32.TryParse(str, out result))
{
    // 转换成功,result 中保存了转换后的整数值
}
else
{
    // 转换失败
}

此方法会尝试将字符串转换为整数,并返回一个布尔值指示是否转换成功。如果成功,则转换后的整数值将保存在 result 变量中;否则,result 变量为转换前的默认值(通常为 0)。

2. 使用 Convert.ToInt32 方法
string str = "123";
int result = Convert.ToInt32(str);

此方法直接将字符串转换为整数,并返回转换后的值。但是请注意,如果转换失败(例如字符串为空、包含非法字符等),将引发异常。

3. 使用 int.Parse 方法
string str = "123";
int result = int.Parse(str);

此方法与 Convert.ToInt32 类似,也直接将字符串转换为整数。不过与 Convert.ToInt32 不同,如果转换失败,将引发 FormatException 异常。

4. 使用 int.TryParse 方法
string str = "123";
int result;
if (int.TryParse(str, out result))
{
    // 转换成功,result 中保存了转换后的整数值
}
else
{
    // 转换失败
}

此方法与 Int32.TryParse 方法功能相同,只是参数名稍有不同。它会尝试将字符串转换为整数,并返回一个布尔值指示是否转换成功。如果成功,则转换后的整数值将保存在 result 变量中。

5. 使用 Convert.ToInt32int.Parse 方法转换时的注意事项
  • 如果字符串为 nullConvert.ToInt32int.Parse 方法会引发 ArgumentNullException 异常。
  • 如果字符串为空串,Convert.ToInt32 方法会返回 0,int.Parse 方法会引发 FormatException 异常。
  • 如果字符串包含非法字符(例如字母、特殊字符等),int.Parse 方法会引发 FormatException 异常。

对于上述方法,我们可以根据不同的需求选择适合的方法来进行字符串到整数的转换。另外,为了保证代码的健壮性,我们可以使用 Int32.TryParseint.TryParse 来处理可能的异常情况。这样可以避免引发异常,提高代码的可靠性和性能。

注意:在进行字符串到整数的转换时,请确保输入的字符串符合整数的格式要求,避免引发转换异常。

参考文档:Int32.TryParse 方法 (System)

参考代码片段:C# 将字符串转换为 int