检查数组是否不包含某个对象

发布于 2024-09-15 13:38:36 字数 117 浏览 1 评论 0原文

是否有一个类可用于检查数组是否不包含对象? 我想做一些类似的事情

if [(myarray doesntContain @"object")]

这可能吗

is there a class available to check if an array doesn't contain an object?
I want to do something like

if [(myarray doesntContain @"object")]

is this possible

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

眼波传意 2024-09-22 13:38:36

对于 NSArray 使用 -containsObject::

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

For NSArray use -containsObject::

if (![myarray containsObject:someObject]) {
    // ...
}
日暮斜阳 2024-09-22 13:38:36

我编写了一个 NSArray 类别来通过实例方法实现这些否定检查,正如您最初所要求的那样。第一个用于数组类型的对象集组,后者用于单个检查。如果数组实例不包含传递的一个或多个对象,则返回 YES。为什么?感叹号让我困惑。

NSArray+Additions.h

-(BOOL)doesNotContainObjects:(id)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;
}

I wrote an NSArray category to achieve these negated checks via instance methods, as you had originally requested.. The first is for an array-type set group of objects, the latter for a singular check. These return YES in the case that the array instance DOES NOT contain the passed object or objects. Why? Exclamation marks confuse me.

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;
}
各空 2024-09-22 13:38:36

如果您正在处理 NSArray,您的第一个调用端口可能应该是 NSArray 的 Apple 文档,以及可能的方法 containsObject,有一个例子 这个问题

If you're dealing with an NSArray, your first port of call should probably be the Apple documentation for NSArray, and probably the method containsObject, there's an example in this question.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文