1.請求用戶信息時,有一個參數為空,返回類型為"<null>",用字符串裝取數據,并傳給下個界面做其他顯示處理。
2.在下個界面對該新的字符串(null),進行判斷處理。發現 isEual,NULL,nil,NIL,等都不能進行判斷。
判斷(null)的方法為:
if(string==nil)
{
? ? NSLog(@"KDA!");
}
判斷<null>的方法為:
if([string isEqual:[NSNUll null]])
{
NSLog(@"KDA!");
}
3.假如你已經像我一樣,將值傳到了下個界面,進行判斷的話,上述方法依舊無法有效。(必須在得到該值的時候,直接判斷;然后做相應處理!)
案例:請求網絡數據返回的值有的為空,不能直接存儲,必須先判斷。
{? ? birthday = "<null>";??
? ? ?category = "<null>"; ? ?
? ? level = 0;? ?
? ? name = "<null>";
? ?password = a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3;
? ?tel = 15003876305;
? ?uid = 61;
}
//這里有多個? "<null>" 怎么處理呢?
?//取出用戶名昵稱? ? ? ? ? ? ??
? NSString *nickName=data[@"name"]; ? ?// 這里取出來的nickName為<null>
//方法一:當返回的值為"<null>"用這個判斷 為這個時給他賦一個值再存起來
if([nickName isEqual:[NSNull null]])
{
? ?nickName=@"請設置您的昵稱";?
}
//方法二:也可以用這個方法判斷空值 和上面的一種方法一樣 都可以解決這個問題
[nickName isKindOfClass:[NSNull class]]
用這個方法對于空值判斷比較簡單點
//方法三:不管是(null) 或是<null> 直接一次判斷
if ([nickName isEqual:[NSNull null]] || nickName==nil) {
nickName =@"設置您的昵稱";
}