Unity_C#判斷字符串為空的幾種用法
轉載自CSDN_FreeSon;
https://blog.csdn.net/biaobiao1217/article/details/39047963
字符串判斷:string在C#中是一個引用類型,但其又具有一定的特殊性。我們在使用string時,往往會把“變量值為空的字符串對象”和“變量值為空字符的字符串對象”搞混。
因為string是我們開發過程使用最頻繁的類型之一,對於字符串為空的判斷方法總結如下:
一般對於判斷字符串是否為空的方法有:
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 ))
經常我們會使用另一種形式:if(!strign.IsNullOrEmpty(str));
從上面的分析我們可以看到,使用Length法來進行字符串判空串是有著很大的性能優勢的,尤其在進行大量字符串判空時!當然首先得判斷字符串實例是否為空引用!故,可以采用如下方法進行判斷:
if(str!=null&&str.length==0)
這樣既可以避免字符串為null時的異常,效率也高於其他方法。
Unity_C#判斷字符串為空的幾種用法