Mag*_*dal 2 vb.net performance isnumeric
今天正在与IsNumeric进行一些基准测试,并将其与以下功能进行比较:
Private Function IsNumeric(ByVal str As String) As Boolean
If String.IsNullOrEmpty(Str) Then Return False
Dim c As Char
For i As Integer = 0 To Str.Length - 1
c = Str(i)
If Not Char.IsNumber(c) Then Return False
Next
Return True
End Function
Run Code Online (Sandbox Code Playgroud)
我对结果非常惊讶.使用数值时,这个数字比常规IsNumeric()快8到10倍,而使用空数字或非数字值则快1000-1500倍.
什么是IsNumeric这么久?在用上面的功能替换之前,我应该考虑一些其他问题吗?我在我的网站上的大约50个不同的地方使用IsNumeric,主要用于验证表单和查询字符串.
Wel*_*bog 15
您检查特定于语言环境的分隔符和小数位在哪里?否定?指数表示法?
你看,你的函数只是数字字符串的一小部分.
1,000,000.00
1,5E59
-123456789
Run Code Online (Sandbox Code Playgroud)
你错过了所有这些.
| 归档时间: |
|
| 查看次数: |
2556 次 |
| 最近记录: |