私が見逃しているのは単純なものだと確信しているので、これは短くて甘いものにします。可変数のオブジェクト (ID 番号) を含むことができる NSMutableArray のカウントを取得しようとしています。配列は JSON データから作成されており、オブジェクトが 1 つであろうと数千であろうと、配列自体は完全に作成されています。
カウントの取得に関しては、配列に複数のオブジェクトが含まれている場合、すべてが正常に機能し、ダンディでカウントが正常に返されます。ただし、配列にオブジェクト/ID 番号が 1 つしかない場合、アプリは -[NSCFString count]: エラーでクラッシュします。
私が使用しているコードは次のとおりです。
[request setCompletionBlock:^(void)
{
NSString *responseCurrent = [request responseString];
NSMutableArray *json = [responseCurrent JSONValue];
NSMutableArray *currentList = [[json valueForKeyPath:@"groupTO"] valueForKeyPath:@"currentList"];
NSMutableArray *idNumArr = [[NSMutableArray alloc]init];
idNumArr = [currentList valueForKey:@"idNumber"];
debug(@"THIS IS ID ARRAY: %@",idNumArr);
debug(@"THIS IS COUNT OF THE ID ARRAY: %@",[idNumArr count]);
// Ive also tried this to get the count, with no variation in results
// int countOfidNums = [idNumArr count];
// debug(@"count of arr: %d",countOfidNums);
この配列にオブジェクトが 1 つしか含まれていない場合に発生する他の問題に対処するための条件を実装するには、このカウントを取得する必要があります。
この問題は、配列内のオブジェクトが文字列であり、単一のオブジェクトがある場合、それはコンマで区切られていない文字列として来ているという事実に起因していると思いますか??? 多分???ヘルプ!!!!
また、違いがあるかどうかはわかりませんが、ARCを使用しています。