📅  最后修改于: 2023-12-03 15:09:35.739000             🧑  作者: Mango
在 C# 中,将字符串转换为数字是一个常见的需求。本文将介绍如何使用 C# 中的内置方法将字符串转换为数字。
C# 中的 int.Parse()
方法可以将一个表示整数的字符串转换为整数。例如,以下代码将字符串 "123"
转换为整数类型:
string str = "123";
int num = int.Parse(str);
int.Parse()
方法还可以处理带符号的整数字符串。例如,以下代码将字符串 "-123"
转换为整数类型:
string str = "-123";
int num = int.Parse(str);
要将一个表示浮点数的字符串转换为浮点数类型,可以使用 float.Parse()
或 double.Parse()
方法。例如,以下代码将字符串 "3.14"
转换为浮点数类型:
string str = "3.14";
float num = float.Parse(str);
在实际开发中,我们经常需要从用户输入的字符串中提取数字。但是,用户可能会错误地输入非数字字符。为了处理这种情况,C# 中提供了 TryParse()
方法。此方法在无法转换输入字符串为数字时不会抛出异常,而是返回一个布尔值,指示转换是否成功。例如:
string str = "abc"; // 无法转换为数字的字符串
int num;
bool success = int.TryParse(str, out num);
if (success)
{
Console.WriteLine("转换成功:{0}", num);
}
else
{
Console.WriteLine("转换失败");
}
此处我们尝试将字符串 "abc"
转换为整数类型。因为字符串无法转换为数字,int.TryParse()
方法返回 false。通过检查返回值,我们可以在转换失败时执行特定的代码。
C# 中的 Convert.ToInt32()
方法可以将多种类型的数据转换为整数类型。例如,以下代码将字符串 "123"
和浮点数 3.14
转换为整数类型:
string str = "123";
float f = 3.14f;
int num1 = Convert.ToInt32(str);
int num2 = Convert.ToInt32(f);
Convert.ToInt32()
方法还可以处理带符号的整数和其他类型的数据。但是,要注意,如果转换失败,Convert.ToInt32()
方法会抛出异常,需要使用 try/catch 块处理异常。例如:
string str = "abc"; // 无法转换为数字的字符串
try
{
int num = Convert.ToInt32(str);
Console.WriteLine("转换成功:{0}", num);
}
catch (FormatException e)
{
Console.WriteLine("转换失败:{0}", e.Message);
}
在 C# 中,将字符串转换为数字是一个常见的需求。本文介绍了 C# 中的几种方法,包括 int.Parse()
、float.Parse()
、double.Parse()
、int.TryParse()
和 Convert.ToInt32()
。小心处理转换失败的情况,以保证程序的正确性。