[問題] 關於NSArray null問題
小弟想判斷如果ProcessArray不等於null就執行 [self ProcessJSONDateFormat]
但是寫成這樣就出現Crash in Main thread
Log:
ProcessArray:()
ProcessArray == 0
-[NSNull length]: unrecognized selector sent to instance 0x3c4e1090
我的程式碼如下:
ProcessArray = [EventSheetDetailArray valueForKey:@"Process"];
NSLog(@"ProcessArray:%@",ProcessArray);
if (ProcessArray.count > 0 ) {
NSLog(@"ProcessArray != 0");
[self ProcessJSONDateFormat];
}else{
NSLog(@"ProcessArray == 0");
}
請問前輩有什麼方法可以避免這樣的錯誤呢??謝謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.243.104.78
推
04/17 14:08, , 1F
04/17 14:08, 1F
→
04/17 15:08, , 2F
04/17 15:08, 2F
→
04/17 15:09, , 3F
04/17 15:09, 3F
→
04/17 15:11, , 4F
04/17 15:11, 4F
→
04/17 15:28, , 5F
04/17 15:28, 5F
推
04/17 15:32, , 6F
04/17 15:32, 6F
→
04/17 16:09, , 7F
04/17 16:09, 7F
→
04/17 17:39, , 8F
04/17 17:39, 8F
→
04/17 17:41, , 9F
04/17 17:41, 9F
試著改成wasihero前輩說的那樣,ProcessArray不管有無值都會跑else那部分
ProcessArray = [EventSheetDetailArray valueForKey:@"Process"];
if([ProcessArray isKindOfClass:[NSNull class]])
{
NSLog(@"ProcessArray-1");
}else{
NSLog(@"ProcessArray-2");
}
※ 編輯: joojooman 來自: 111.243.104.78 (04/17 17:50)
推
04/17 17:55, , 10F
04/17 17:55, 10F
回 kiii210:Log 是 ProcessArray:()
→
04/17 17:55, , 11F
04/17 17:55, 11F
推
04/17 19:27, , 12F
04/17 19:27, 12F
推
04/17 23:15, , 13F
04/17 23:15, 13F
→
04/17 23:16, , 14F
04/17 23:16, 14F
→
04/17 23:16, , 15F
04/17 23:16, 15F
抱歉!小弟出現[NSNull length]錯誤是因為其他code的原因!
ProcessArray = [EventSheetDetailArray valueForKey:@"Process"];
NSLog(@"ProcessArray:%@",ProcessArray);
if (ProcessArray.count > 0 ) {
NSLog(@"ProcessArray != 0");
[self ProcessJSONDateFormat];
}else{
NSLog(@"ProcessArray == 0");
}
以上這樣寫法沒錯~感謝各位的幫忙!
※ 編輯: joojooman 來自: 111.243.102.45 (04/18 13:31)