Ваш код здесь довольно странный. Какой тип obj.instock
? Ваша самая первая строка
BOOL* instock = [item objectForKey:@"itemInStock"];
не имеет никакого смысла вообще. -objectForKey:
не возвращает BOOL*
значений. Возвращает id
. Я предполагаю, что на самом деле вы получаете NSNumber *
обратно, и это просто работает нормально, потому что NSNumber *
вписывается в BOOL *
(так как они оба указатели). Точно так же obj.instock
, вероятно, также будет NSNumber*
(если бы это не был какой-либо объект, ваш NSLog()
потерпит крах).
Итак, если предположить, что obj.instock
является NSNumber*
, то условием, которое вы хотите, будет просто
if ([obj.instock boolValue]) {
// yes
} else {
// no
}
Вам также следует исправить этот код, чтобы не пытаться утверждать, что у вас есть BOOL*
, если у вас его нет.