我发现自己经常需要使用Integer.TryParse来测试一个值是否为整数。然而,当你使用TryParse,你必须传递一个引用变量到函数,所以我发现自己总是需要创建一个空白整数传入。通常它看起来像:
Dim tempInt as Integer If Integer.TryParse(myInt,tempInt) Then
我认为这是相当麻烦,因为我想要的是一个简单的真/假回答。有没有更好的方法来解决这个问题?为什么没有一个重载的函数,我可以只传递我想测试的值,得到一个真/假的反应?
无需声明整数。
原文链接:https://www.f2er.com/vb/256248.htmlIf Integer.TryParse(inttocheck,0) Then
要么
If Integer.TryParse(inttocheck,Nothing) Then
如果你有.Net 3.5的能力,你可以创建一个扩展方法的字符串。
Public Module MyExtensions <System.Runtime.CompilerServices.Extension()> _ Public Function IsInteger(ByVal value As String) As Boolean If String.IsNullOrEmpty(value) Then Return False Else Return Integer.TryParse(value,Nothing) End If End Function End Module
然后调用like:
If value.IsInteger() Then
对不起,我知道,但你也可以添加到MyExtensions类上面的.Net 3.5和不担心,除非你需要验证。
<System.Runtime.CompilerServices.Extension()> _ Public Function ToInteger(ByVal value As String) As Integer If value.IsInteger() Then Return Integer.Parse(value) Else Return 0 End If End Function
然后简单使用
value.ToInteger()
如果它不是有效的整数,将返回0。