¿Hay alguna manera de verificar si un conjunto está vacío?¿Buscando NSSet vacío?
NSMutableSet *setEmpty = [[NSMutableSet alloc] init];
// Code to do things...
// Check for empty set?
[setEmpty release];
Gary
¿Hay alguna manera de verificar si un conjunto está vacío?¿Buscando NSSet vacío?
NSMutableSet *setEmpty = [[NSMutableSet alloc] init];
// Code to do things...
// Check for empty set?
[setEmpty release];
Gary
se puede utilizar [recuento setEmpty] para ver cuántos elementos hay en el conjunto ... así:
if ([setEmpty count] == 0) {
o
if (![setEmpty count]) {
etc. ..
No vi un explici t 'isEmpty' método en http://developer.apple.com/mac/library/documentation/cocoa/Reference/Foundation/Classes/NSSet_Class/Reference/Reference.html pero si existe, elija eso en lugar de verificar el recuento.
Gracias Malaxeur, perfecto Lo busqué tanto en los documentos como en el autocompletado de Xcode y lo perdí ambas veces :(No creo que haya un 'isEmpty' ya que recibí un error de método faltante al probarlo. De todos modos el recuento es perfecto, gracias por la respuesta y su tiempo. – fuzzygoat
Si lo usa mucho, puede agregar un método 'isEmpty' como una categoría en' NSSet', que un cuerpo como '- (BOOL) isEmpty {return [auto cuenta] == 0;} '. – mipadi
... aquí está el archivo solo más utilizado en mi repositorio compartido: DMCommonMacros.hstatic inline BOOL IsEmpty(id thing) { return thing == nil || ([thing respondsToSelector:@selector(length)] && [(NSData *)thing length] == 0) || ([thing respondsToSelector:@selector(count)] && [(NSArray *)thing count] == 0); }
Esta función se activará en todos los contenedores de cacao, cadenas y NSData.
¿Qué hay de este para juegos realmente grandes? El objetivo es no hacer el conteo cada vez.
NSSet *mySet = ...
if ([mySet anyObject] == nil)
{
// The set is empty
}
Esta es una tarea bastante simple. Debería adquirir el hábito de mirar los documentos en busca de respuestas como estas. –
Hola Brad, revisé los documentos, pero me perdí la entrada para contar. Más error de mi parte que holgazanería desenfrenada. – fuzzygoat