1. 使用 int.Parse
int.Parse
方法将字符串转换为整数。如果字符串不是有效的数字格式,将抛出异常。
string numberString = "123";
int number = int.Parse(numberString);
Console.WriteLine(number); // 输出: 123
2. 使用 int.TryParse
int.TryParse
方法是一个更安全的选择,它尝试将字符串转换为整数。如果转换成功,返回 true
,否则返回 false
,并且不会抛出异常。
string numberString = "123";
if (int.TryParse(numberString, out int number))
{
Console.WriteLine(number); // 输出: 123
}
else
{
Console.WriteLine("转换失败");
}
3. 使用 Convert.ToInt32
Convert.ToInt32
方法也可以将字符串转换为整数。与 int.Parse
不同的是,如果输入字符串为 null
,它将返回 0
,而不是抛出异常。
string numberString = "123";
int number = Convert.ToInt32(numberString);
Console.WriteLine(number); // 输出: 123
4. 错误处理
在使用 int.Parse
和 Convert.ToInt32
时,如果字符串不符合数字格式,可能会抛出异常。可以使用 try-catch
块来处理这些异常。
string numberString = "abc"; // 无效的数字
try
{
int number = int.Parse(numberString);
Console.WriteLine(number);
}
catch (FormatException)
{
Console.WriteLine("输入字符串格式不正确。");
}
catch (OverflowException)
{
Console.WriteLine("输入数字过大或过小。");
}
选择合适的方法
- 使用
int.TryParse
:当您不确定输入字符串的格式,并希望避免异常时。 - 使用
int.Parse
:当您确信输入字符串是有效的数字格式时。 - 使用
Convert.ToInt32
:当您希望处理null
字符串时,返回0
。