我需要编写一个在内部搜索电话号码personArray
并返回与该电话号码关联的名称的方法。
- (NSString *) nameForNumber:(NSString *)phoneNumber{
}
我需要编写一个在内部搜索电话号码personArray
并返回与该电话号码关联的名称的方法。
- (NSString *) nameForNumber:(NSString *)phoneNumber{
}
你应该做的是学习如何使用 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";
}
}
我使用的名称基于我在回答您的其他问题之一时所做的相同假设(此处)。