Diferencia entre containsObject: y miembro: methods de NSSet?

¿Cuál es la diferencia entre estos dos methods que pertenecen a la class NSSet:

-(BOOL)containsObject:(id)anObject -(id)member:(id)object 

La respuesta está en los valores de retorno. containsObject devuelve un SÍ o un NO dependiendo de si el object que envía pertenece a ese set en particular.

member devuelve id, lo que significa que devuelve el object real si ese object es parte del set.

Como ejemplo, tiene un NSSet, aSet, con anObject. anObject pertenece al set.

 [aSet containsObject:anObject]; //returns YES [aSet member:anObject]; //If the set contains an object equal to object (as determined by isEqual:) then that object (typically this will be object), otherwise nil. 

Si un object no existe en un set:

 [aSet containsObject:anObject]; //return NO [aSet member:anObject]; //return nil