最直接的判断和转换
前面已经讲到,使用转换函数转换数据类型,在转换失败的情况下,会出现错误提示。
使用TryParse方法,可以避免错误提示,但是代码略显繁琐。
最常见的转换应该是将字符转换为数字,对于这种转换,有更直接的方法。
Visual
Basic提供了一个Val函数,用于将字符转换为数值,即使转换失败,也不会报错,而是返回0。
例如:
Dim
s1 As String = "abc"虽然变量s1是无法转换为数值的,但是在命令窗口执行上面的代码,却不会有任何错误提示,因为Val函数将s1被转换为0了。
此外Visual Basic还提供了一个IsNumeric函数,用于判断某个给定的字符串是否能够转换为数值,毕竟有时 会希望在转换前能够判断一下的。
例如:
假定某个数组中,一些元素是数字,一些元素是字符,我们需要统计有多少个元素是数字,以及这些数字元素的和:
Dim
s(2) As String对应的还有一个IsDate函数,用于判断给定的字符串是否可以转换为日期时间,例如:
Dim
sr As
String =
"2022-05-01"
If
IsDate(sr)
Then
Dim dt
As Date =
CDate(sr)
Output.Show(dt)
Else
MessageBox.Show("非法日期格式",
"提示",
MessageBoxButtons.OK,
MessageBoxIcon.Error)
End
If