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

时间:2016-03-01 10:10:47

标签: ios objective-c arrays firebase

我想知道在从firebase检索数据后,我是如何检查数组是否包含某个值的。我检索数据并将其存储在数组中,如下所示:

    [self.firebase2 observeEventType:FEventTypeChildAdded withBlock:^(FDataSnapshot *snapshot){

    if (newMessagesOnTop) {
        [self.chat2 insertObject:snapshot.value atIndex:0];
    } else {
        [self.chat2 addObject:snapshot.value];
    }

从这里我想检查数组chat2中是否有特定对象。而且我也想知道我应该使用哪种特定的方法。

任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

在Objective-C中,这是代码

NSArray * list = @[@(1),@(2),@(3)];
if ([list containsObject:@(2)]) {
    NSLog(@"Yes");
} else {
    NSLog(@"No");
}

答案 1 :(得分:0)

如果你想知道你的chat2是否已经包含检索到的对象,你应该使用containsObject()来检查对象是否存在

BOOL isPresent = [self.chat2 containsObject:snapshot.value];

如果你使用firebase或任何其他你将对象存储在一个所有需要操作的数组中,这并不重要。

答案 2 :(得分:0)

if ([self.chat2 containsObject:snapshot.value]) {
    [self.chat2 insertObject:snapshot.value atIndex:0];
} else {
    [self.chat2 addObject:snapshot.value];
}
[self setNeedsDisplay];
[tableView reloadData];