Ответ 1
Мой смысл заключается в том, чтобы сравнить его как
if([productObject.pid intValue] == [number intValue])
{
NSLog(@"BUY it!!!");
[purchasArray addObject:productObject];
}
веселит.
Я бы избегал сравнения объектов
Я использовал этот код для сравнения двух объектов NSNumber, но он никогда не передавал условие if.
listItems = [appDelegate.productStatus componentsSeparatedByString:@","];
for (int i=0;i<[appDelegate.productArray count]; i++)
{
for (int j=0; j<[listItems count]; j++)
{
number=[NSNumber numberWithInt:[[listItems objectAtIndex:j] intValue]];
NSLog(@"number %@",number);
productObject=[appDelegate.productArray objectAtIndex:i];
NSLog(@"%@,%@",productObject.pid,number);
if (productObject.pid == number)
{
NSLog(@"BUY it!!!");
[purchasArray addObject:productObject];
}
}
}
Что не так?
Мой смысл заключается в том, чтобы сравнить его как
if([productObject.pid intValue] == [number intValue])
{
NSLog(@"BUY it!!!");
[purchasArray addObject:productObject];
}
веселит.
Я бы избегал сравнения объектов
Изменить следующий код..
if ([productObject.pid isEqualToNumber number])
{
NSLog(@"BUY it!!!");
[purchasArray addObject:productObject];
}
Надеюсь, что это поможет вам..
Попробуйте сравнить метод вместо '=='.
if([1stNum compare:secNum] == NSOrderedSame)
{
// do something
}
Скажи мне, если это поможет сейчас!
Используйте, как это я, это поможет вам
NSNumber *n=[[NSNumber alloc]init];
if([n isEqualToNumber:somenumber])
{
}