-1

我需要编写一个在内部搜索电话号码personArray并返回与该电话号码关联的名称的方法。

- (NSString *) nameForNumber:(NSString *)phoneNumber{

}
4

1 回答 1

1

你应该做的是学习如何使用 NSArray 方法 indexOfObjectPassingTest:。这是在数组中查找内容的一种非常有用的方法。您当前的问题可以这样解决:

- (NSString *) nameForNumber:(NSString *)phoneNumber{
    NSInteger indx = [self.personArray indexOfObjectPassingTest:^BOOL(Person *aPerson, NSUInteger idx, BOOL *stop) {
        return [aPerson.phoneNumbers.allValues containsObject:phoneNumber];
    }];
    if (indx != NSNotFound) {
        return [self.personArray[indx] lastname];
    }else{
        return @"Not Found";
    }
}

我使用的名称基于我在回答您的其他问题之一时所做的相同假设(此处)。

于 2013-09-14T01:27:28.003 回答