我需要从Visual Basic的文本框中找到两个数字之间的差异。我需要它能够找到数字之间的差异,即使在第二个文本框中输入了更大的数字也是如此。
这就是我的代码现在的样子。问题是有些数字不是负数时会变成负数,而其他数字则没问题。
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim FirstNumber As Integer
Dim SecondNumber As Integer
Dim Difference As String
FirstNumber = txtFirstNumber.Text
SecondNumber = txtSecondNumber.Text
Difference = txtDifferenceAnswer.Text
If txtFirstNumber.Text < txtSecondNumber.Text Then
Difference = txtSecondNumber.Text - txtFirstNumber.Text
Else
Difference = txtFirstNumber.Text - txtSecondNumber.Text
End If
txtDifferenceAnswer.Text = Difference
您可以使用Math.Abs
获取绝对值,并且应该使用Int32.TryParse
:
Dim FirstNumber As Int32
Dim SecondNumber As Int32
Dim Difference As Int32
If Int32.TryParse(txtFirstNumber.Text, FirstNumber) AndAlso Int32.TryParse(txtSecondNumber.Text, FirstNumber) Then
Difference = Math.Abs(FirstNumber - SecondNumber)
txtDifferenceAnswer.Text = Difference.ToString()
Else
txtDifferenceAnswer.Text = "Enter valid integers!"
EndIf
我建议设置Option Strict
到On
您的设置。这样一来,您的代码将无法编译,这是一件好事,因为您可以快速学习如何编写不依赖编译器技巧来解析不兼容类型的健壮高效的代码。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句