NSString 判空的最佳方式

NSString的"空"颓鲜,有哪些情況呢:

NSString *str;

1 str = @"";

2 str = nil;

3 str = NULL;

4 str = @"? ";(中間有空格负间,有時(shí)候需要考慮這種情況)

唯笙。。找默。暫時(shí)先列舉這些常見的情況吧艇劫,其他情況我還在研究,如NSNull惩激,Nil等店煞,好暈的額。咧欣。

于是我們可能會(huì)寫這樣的代碼來判斷str是否為空:

//針對(duì)case1

if ([str isEqualToString:@""]) {

NSLog(@"str is empty!!!");

}

//針對(duì)case2

if (str == nil) {

NSLog(@"str is empty!!!");

}

//針對(duì)case3

if (str==NULL) {

NSLog(@"str is empty!!!");

}

是不是覺得很麻煩浅缸,似乎需要對(duì)每種情況都使用相應(yīng)的代碼來進(jìn)行保護(hù)轨帜。我也覺得這不科學(xué)魄咕。查了寫資料發(fā)現(xiàn),其實(shí)只要用一句代碼就能搞定了:

if ( str.length == 0) {

NSLog(@"str is empty!!!");

}

這句代碼可以通吃上面case1蚌父、2哮兰、3毛萌;其實(shí)也是好理解的,nil本身也是一個(gè)對(duì)象喝滞,在ios中給nil

發(fā)消息是不會(huì)崩潰的阁将,只不過沒啥反應(yīng)而已,因此length也是默認(rèn)的0了右遭;

至于類似于case4的情況做盅,可以先將字符串中的空格"? " Trim掉,然后在進(jìn)行判斷:

step1:? 定義宏:

#define allTrim( object ) [object stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet] ]

step2: 使用之:

NSString *emptyString = @"?? ";

if ( [allTrim( emptyString ) length] == 0 ) NSLog(@"Is empty!");

各位看官窘哈,這是筆者第一篇博客呢吹榴,若對(duì)您有用,請(qǐng)支持滚婉,請(qǐng)打賞图筹,筆者會(huì)再接再厲~

原文鏈接:Objective-C: Check if NSString is empty

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市让腹,隨后出現(xiàn)的幾起案子远剩,更是在濱河造成了極大的恐慌,老刑警劉巖骇窍,帶你破解...
    沈念sama閱讀 221,548評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瓜晤,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡像鸡,警方通過查閱死者的電腦和手機(jī)活鹰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來只估,“玉大人志群,你說我怎么就攤上這事』赘疲” “怎么了锌云?”我有些...
    開封第一講書人閱讀 167,990評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)吁脱。 經(jīng)常有香客問我桑涎,道長(zhǎng),這世上最難降的妖魔是什么兼贡? 我笑而不...
    開封第一講書人閱讀 59,618評(píng)論 1 296
  • 正文 為了忘掉前任攻冷,我火速辦了婚禮,結(jié)果婚禮上遍希,老公的妹妹穿的比我還像新娘等曼。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評(píng)論 6 397
  • 文/花漫 我一把揭開白布禁谦。 她就那樣靜靜地躺著胁黑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪州泊。 梳的紋絲不亂的頭發(fā)上丧蘸,一...
    開封第一講書人閱讀 52,246評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音遥皂,去河邊找鬼力喷。 笑死,一個(gè)胖子當(dāng)著我的面吹牛演训,可吹牛的內(nèi)容都是我干的冗懦。 我是一名探鬼主播,決...
    沈念sama閱讀 40,819評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼仇祭,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼披蕉!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起乌奇,我...
    開封第一講書人閱讀 39,725評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤没讲,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后礁苗,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體爬凑,經(jīng)...
    沈念sama閱讀 46,268評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評(píng)論 3 340
  • 正文 我和宋清朗相戀三年试伙,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了嘁信。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,488評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡疏叨,死狀恐怖潘靖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蚤蔓,我是刑警寧澤卦溢,帶...
    沈念sama閱讀 36,181評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站秀又,受9級(jí)特大地震影響单寂,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜吐辙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評(píng)論 3 333
  • 文/蒙蒙 一宣决、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧昏苏,春花似錦尊沸、人聲如沸昵时。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至救巷,卻和暖如春壶熏,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背浦译。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工棒假, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人精盅。 一個(gè)月前我還...
    沈念sama閱讀 48,897評(píng)論 3 376
  • 正文 我出身青樓帽哑,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親叹俏。 傳聞我的和親對(duì)象是個(gè)殘疾皇子妻枕,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容