str.Length==0
效率更快
1.使用Length来检查一个字符串是否为空。
计算Length时,只需要检查内部数组的长度,不需要字节比较。而字节比较是比直接计算计算要慢很多的
2.在来看看string的一个构造函数
String (Char[], Int32, Int32)
将 String 类的新实例初始化为由 Unicode 字符数组、该数组内的起始字符位置和一个长度指示的值。
即string对象在本身构造时,就已经有一个参数是长度指示,他对外的表现就是Length
3.我们在来看看String.Empty本质,有一定c++和vb基础的都知道,一个字符串都有一个表示结尾的字节,net环境下也是如此,这个结尾的字节就是String.Empty
4.使用str==String.Empty要比str== " "快速因为String.Empty在内部是个常量
综上:
a、str== " ";
b、str==String.Empty;
c、str.Length==0;
c优于b,b优于a
这是我网上找的,你看一下吧,第一次在黑马论坛回复,以前都是逛论坛,看别人讨论的 |