ios - Comparando dos objetos NSNumber
comparison (4)
Cambia el siguiente código ...
if ([productObject.pid isEqualToNumber number])
{
NSLog(@"BUY it!!!");
[purchasArray addObject:productObject];
}
Espero que esto te ayudará..
Utilicé este código para comparar dos objetos NSNumber, pero nunca pasó la condición 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];
}
}
}
¿Qué está mal?
Intente comparar el método en lugar de ''==''.
if([1stNum compare:secNum] == NSOrderedSame)
{
// do something
}
¡Dime si ayuda ahora!
Mi sugerencia es compararla como
if([productObject.pid intValue] == [number intValue])
{
NSLog(@"BUY it!!!");
[purchasArray addObject:productObject];
}
aclamaciones.
Evitaría la comparación de objetos
Utilízalo así, esto te será útil.
NSNumber *n=[[NSNumber alloc]init];
if([n isEqualToNumber:somenumber])
{
}