Quiero tener un NSSet simple que está cargado con algunos NSNumbers y luego averiguar si esos números ya están agregados en el conjunto o no. Cuando hago esto:NSSet of NSNumbers - método miembro es siempre nulo
NSMutableSet *set = [[NSMutableSet alloc] init];
NSNumber *num1 = [NSNumber numberWithInt:5];
NSNumber *num2 = [NSNumber numberWithInt:5];
[set addObject:num1];
if([set member:num2]){
// something...
}
El problema es que el miembro siempre devuelve cero (si es falso), incluso si esos números son iguales. El método isEqual devuelve verdadero. Así
if([num1 isEqual:num2]){
// correct
}
obras ...
En docs leí que utiliza el método miembro de IsEqual así que no sé cuál es el problema ... Gracias por cualquier consejo.
si su código está pegado correctamente - no ha agregado el objeto num2 a su conjunto – Maggie
está seguro ... ¡su código funciona perfectamente bien para mí! – Devarshi
@Maggie sí, estoy seguro, el punto es que quiero verificar si el número 5 ya está en el conjunto, pero tengo que usar nsnumber porque son objetos, entonces quiero verificar si el objeto nsnumber con valor de 5 es Ya en el conjunto (num1 con el valor 5 es, entonces debería volver verdadero) – haluzak