gpt4 book ai didi

objective-c - 过滤包含自定义对象的 NSArray

转载 作者:技术小花猫 更新时间:2023-10-29 10:57:31 25 4
gpt4 key购买 nike

我有 UISearchBarUITableView,这是一个返回包含如下对象的 NSMutableArray 的 Web 服务:

//Food.h
Food : NSObject {
NSString *foodName;
int idFood;
}

@property (nonatomic, strong) NSString *foodName;

和数组:

Food *food1 = [Food alloc]initWithName:@"samsar" andId:@"1"];
Food *food2 = [Food alloc] initWithName:@"rusaramar" andId:@"2"];

NSSarray *array = [NSArray arrayWithObjects:food1, food2, nil];

如何使用名称以“sa”开头的对象过滤我的数组?

最佳答案

您可以使用以下代码过滤任意数组:

NSMutableArray *array = ...;

[array filterUsingPredicate:[NSPredicate predicateWithBlock:^BOOL(id evaluatedObject, NSDictionary *bindings) {
return [evaluatedObject.foodName hasPrefix:searchBar.text];
}];

这将“就地”过滤数组,并且只能在 NSMutableArray 上访问。如果您想获得一个已为您过滤的新数组,请使用 filteredArrayUsingPredicate: NSArray 方法。

关于objective-c - 过滤包含自定义对象的 NSArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9558335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com