ios comparison nsnumber

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]) { }