通常有:
string str="";
1、if(str=="")
2、if(str==String.Empty)
3、if(str.length==0)
三种方法的效果一样,都可以判断字符串是否为空,但性能上有所不同,因为整数判断等于最快,没有经过实例化等复杂的过程,所以第三种方法str.Length==0是最快的,其次是str==String.Empty,最后是str==""(第一种和第二种差不多);但是要想使用第三种方法判断字符串是否为空,必须保证字符串不为null,如果为null就会报出NullReferenceException 异常。
还有一种判断字符串是否为空的方法,也是我个人比较喜欢的一种方法, 它不但一次性能判断"空的字符串变量",还能判断“值为空字符串的变量”,并且还可以让代码简洁美观。判断的效率也不算低:
if(string.IsNullOrEmpty( str ))
从上面的分析我们可以看到,使用Length法来进行字符串判空串是有着很大的性能优势的,尤其在进行大量字符串判空时!当然首先得判断字符串实例是否为空引用!故,可以采用如下方法进行判断:
if(str!=null&&str.length==0)
这样既可以避免字符串为null时的异常,效率也高于其他方法。