VB.net--如何选择检查"空字符串"的方法(转载)

VB.net--如何选择检查"空字符串"的方法

    在许多情况下,我们需要对字符串进行"空"检查,比如 要检查从方法的参数传入的字符串、检查用户在文本框中输入的文字、检查DataTable的字段值等等
     与C#不同的是,Visual Basic.net允许我们使用多种语法和方法来完成此操作。这些方法的复杂度、执行性能各有不同,现在做一一介绍:
 

1.最简单 并且安全健壮的语法:

If Value = "" Then DoSomething ...

无论MyStringNothing,还是String.Empty,还是长度为零的字符串,还是DBNull.Value,均被判断为""

2.麻烦一点的方法:

If Value Is Nothing OrElse value Is String.Empty Then DoSomething ...

这个方法同样比较安全和健壮,只是有点麻烦

3.我发现许多程序员所用的方法(不准确,且性能很差,在此不做讨论):

If Value = String.Empty Then DoSomething ...

首先说这种方法是不正确的,因为当Valuenothing时会检测错误

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毫秒

可以看到:代码最少的方法,性能最弱 ;代码最长的方法,性能最强

posted on 2010-10-16 16:43  青草随缘  阅读(1561)  评论(0)    收藏  举报

导航