C#是一种有趣的编程语言,因为它包括各种数据类型,使开发人员感到挑战和兴趣。为了与数据互动并生成符合最终目标的指令,对数据类型的能力是必要的。程序员在编写时可能需要修改数据类型,以了解变量在代码中的表现,这被称为类型转换。
换句话说,计算机程序员将一种数据类型转换为另一种数据类型,以使函数适当地处理变量。将一个字符串点转换为一个整数是本文的主题。
在将字符串转换为整数时,有几件事需要注意。
Ubuntu 20.04中C#中字符串到int的转换是什么意思?
类型转换(或类型转换)将字符串数据类型转换为整数类型。这种类型的转换相当常见,因为我们从输入、命令行选项和数据库中获取的数值是字符串,尽管这些数值是整数。
如何在Ubuntu 20.04中用C#语言将字符串转换成int?
转换类有一些方法,如Convert.oInt32、Int32.Parse和Int32.TryParse都是可以用来将字符串转换成整数的函数。转换是通过这些方法进行的。源字符串可以是任何类型的字符串,包括数字、字符组合、或空字符串。
当提供的字符串是一个数字或浮点数时,它可以通过上述任何一种方法将其从字符串转换为int,但字符组合和空字符串会引发错误,必须使用例外处理方法来捕捉。
例子 #1: 在Ubuntu 20.04中使用C#中的Parse方法将字符串转换成int的程序
Parse()方法将一个数字的字符串转换为16/32/64位有符号整数。从这里开始,我们将只检查32位的转换,以示说明。如果字符串不是一组数字,该方法会抛出一个FormatException,这是一个小缺点。尽管Parse()忽略了字符串开头和结尾的白色空格,但所有的字符都必须有一个数字值才能转换成功。为了处理这个异常,我们考虑使用try...catch语句。但是,在这里,我们知道我们的字符串是数字的,所以不需要try...catch块。

在上述源代码的第一行,我们有一个库 "system",关键词是 "using"。这个库提供了一个C#的类和方法的接口。然后,我们定义了一个命名空间库为 "Program1"。在这个名字空间中,我们用关键字 "class "建立了一个类,并给这个类起了一个名字叫 "square"。在我们的 "square "类中,我们有一个静态的void main函数,它接收一个字符串[] args作为字符串数组声明的参数。
在main块中,我们有一个字符串类型的变量 "str",它是用带双引号的数字值存储的,是字符串风格的表示。然后,我们有另一个int类型的变量 "length"。这个变量使用了parse方法。parse方法需要一个参数 "str"。str "的值将通过解析方法被转化为int数据类型。变量 "area "通过执行公式(length*length)找到正方形的面积,并将通过writeLine消息显示面积值。
parse方法在输出中给出一个整数值,如下所示。

例#2:在Ubuntu 20.04中使用C#中的TryParse方法将字符串转换成int的程序
TryParse()方法是为所有原始类型提供的,用于将字符串转换为请求的数据类型。将字符串转换为整数应以这种方式进行。TryParse()是Parse()的一个很好的替代品,因为它在失败时不会抛出一个异常。相反,如果转换失败,它只是返回False,这就简化了实现的过程。

我们在上述源代码的开头提供了系统库。名字空间也被指定为 "Program2"。然后,我们创建了一个名为 "Add "的类,并在其中调用了主函数。在这个类的主函数中,我们声明了一个字符串类型的变量为 "MyStr",并向其传递了一个带有字符串风格的数字值。然后,我们有另一个int类型的变量 "Value",并将其初始化为 "0"。
之后,我们调用了TryParse方法,该方法需要两个参数:第一个是字符串变量 "MyStr",第二个是int变量 "Value",关键字为 "out"。创建了int变量 "Sum",它接受变量 "Value "进行加法运算。然后,我们把变量 "Sum "传到writeLine方法里面去显示。
字符串被转换为int类型,并提供整数的总和,如下所示。

例子3:在Ubuntu 20.04中使用C#中的转换方法将字符串转换成int类型的程序
我们在这里使用了ConvertToInt32()函数;Parse()和ConvertToInt32()的唯一区别是ConvertToInt32()接受空值并返回。结果是,数值为零。如果字符串不是数字,这个技术将抛出一个FormatException。为了解决这个问题,可以利用一个try-catch块。在这个例子中,我们使用了异常处理,所以如果出现异常,try块将会引发异常,而catch块将会接受它并写出任何发生的异常。

在我们的第三个源代码中,我们再次包含了系统库和命名空间,指定为 "Program3"。然后,我们在命名空间块内有一个名为 "Circle "的类。Circle "类有其主要的公共函数。该类的主函数有一个字符串变量声明为 "Str_val",并将其初始化为 "null "值。
之后,我们要尝试......捕捉定义。首先,在try块中,我们调用了转换方法,"Str_val "作为参数被传递给该方法,并被分配给一个变量 "Diameter"。另一个变量 "Radius "也在try块中定义,它将通过直径除以值 "2 "来返回圆的半径。圆的半径将以整数形式呈现。在try块之外,catch块对发生的异常进行实现,并打印出发生异常的信息。
因此,输出是零,因为我们有字符串值 "null"。

结论
我们介绍了三种在C#中将整数转换为字符串的方法,并讨论了如何根据你的输入源和你对它的信心来选择它们。异常的代价很高,在程序流程中包括它们并不是一个明智的做法。然而,它们在提取关键信息时可以很方便,比如Convert()方法的溢出条件。上面列出的所有策略都同样有效,但每个策略都有自己的权衡。在本文讨论的因素的前提下,我们建议选择最佳方案。