gpt4 book ai didi

ios - 在 Objective-C 中使用 NSPredicate 过滤自定义数据类的数组

转载 作者:行者123 更新时间:2023-11-28 19:38:08 24 4
gpt4 key购买 nike

我有一个名为 DataClass 的自定义数据类,这里有详细信息。

@interface DataClass : NSObject

@property (assign,nonatomic)NSInteger invoiceID;
@property (assign,nonatomic)NSInteger anInvoiceID;
@property (strong,nonatomic)NSString *customerName;
@property (strong,nonatomic)NSString *departmentName;
@property (strong,nonatomic)NSString *typeNumberOfInvoice;
@property (strong,nonatomic)NSString *invoiceDate;
@property (strong,nonatomic)NSString *stockNumber;
@property (strong,nonatomic)NSString *vehicleDetail;
@property (strong,nonatomic)NSString *rONumber;
@property (assign,nonatomic)NSInteger amount;
@property (strong,nonatomic)NSString *color;
@property (strong,nonatomic)NSString *year;
@property (strong,nonatomic)NSString *location;
@property (strong,nonatomic)NSString *carVinNumber;
@property (strong,nonatomic)NSString *dealership;
@property (strong,nonatomic)NSString *technician;
@property (strong,nonatomic)NSData *imageData;
@property (strong, nonatomic)NSMutableArray *arrayOfLocations;

在我的 ViewController 类中,我有一个文本字段,我在其中接受输入并根据文本显示显示。我有一个名为 arrayOfData 和 filteredDataArray 的 NSMutableArray。 arrayOfData 包含上述 DataClass 的对象,但是当我尝试使用此代码执行此操作时,我得到错误

'The left hand side for an ALL or ANY operator must be either an NSArray or an NSSet.'

     NSPredicate *aToZPredicate =
[NSPredicate predicateWithFormat:@"ANY invoiceID CONTAINS[cd] %@", searchText];
filteredDataArray = [arrayOfData filteredArrayUsingPredicate:aToZPredicate];
[_tableView reloadData];

最佳答案

如果要与 Integer 进行比较,切勿使用 contains。与等号比较

NSPredicate *aToZPredicate =
[NSPredicate predicateWithFormat:@"invoiceID == %d", [searchText intValue]];
filteredDataArray = [arrayOfData filteredArrayUsingPredicate:aToZPredicate];
[_tableView reloadData];

关于ios - 在 Objective-C 中使用 NSPredicate 过滤自定义数据类的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36832575/

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