VB.net--如何选择检查"空字符串"的方法(转载)
VB.net--如何选择检查"空字符串"的方法
在许多情况下,我们需要对字符串进行"空"检查,比如 要检查从方法的参数传入的字符串、检查用户在文本框中输入的文字、检查DataTable的字段值等等
与C#不同的是,Visual Basic.net允许我们使用多种语法和方法来完成此操作。这些方法的复杂度、执行性能各有不同,现在做一一介绍:
1.最简单 并且安全健壮的语法:
If Value = "" Then DoSomething ...
无论MyString是Nothing,还是String.Empty,还是长度为零的字符串,还是DBNull.Value,均被判断为""
2.麻烦一点的方法:
If Value Is Nothing OrElse value Is String.Empty Then DoSomething ...
这个方法同样比较安全和健壮,只是有点麻烦
3.我发现许多程序员所用的方法(不准确,且性能很差,在此不做讨论):
If Value = String.Empty Then DoSomething ...
首先说这种方法是不正确的,因为当Value为nothing时会检测错误
4.还有其它的方法:
If value Is Nothing OrElse value.Length = 0 Then DoSomething ...
下面对这三种方法做一个性能测试(重复执行10000000次), 结果如下(值越小性能越高)
If value = "" 4266毫秒
If value Is Nothing OrElse value Is String.Empty 235毫秒
If value Is Nothing OrElse value.Length = 0 750毫秒
可以看到:代码最少的方法,性能最弱 ;代码最长的方法,性能最强
浙公网安备 33010602011771号