Подтвердить что ты не робот

Проверка того, не содержит ли массив какой-либо объект

существует ли класс, доступный для проверки того, не содержит ли массив какой-либо объект? Я хочу сделать что-то вроде

if [(myarray doesntContain @"object")]

это возможно

4b9b3361

Ответ 1

Для NSArray используйте -containsObject::

if (![myarray containsObject:someObject]) {
    // ...
}

Ответ 3

Я написал категорию NSArray для достижения этих отрицательных проверок с помощью методов экземпляра, как вы изначально запрашивали. Первая из них - для группы объектов массива, а вторая - для особой проверки. Они возвращают ДА в случае, если экземпляр массива НЕ содержит переданный объект или объекты. Зачем? Восклицательные знаки меня путают.

NSArray + Additions.h

-(BOOL)doesNotContainObjects:(id<NSFastEnumeration>)enumerable;

-(BOOL)doesNotContainObject:(id)object;

NSArray + Additions.m

-(BOOL)doesNotContainObjects:(id<NSFastEnumeration>)enumerable {
   for (id x in enumerable) {
     if ([self containsObject:x]) return NO; // exists, abort!
   }
   return YES;   // it ain't in there, return TRUE;
}
- (BOOL)doesNotContainObject:(id)object {
  if ([self containsObject:object]) return NO; return YES;
}