[英]Filter NSDictionary from NSArray
我有一個包含 NSDictionary 對象的 NSArray,其鍵為 {"name","age","weight"},其中鍵名是 NSString ,age 是 NSInteger ,weight 是浮點值
我需要使用以下條件過濾 NSArray 1.name contains 'abc' 2.age under 18 3.weight less than 50
答案將不勝感激
這會起作用,但根本不優雅。
NSMutableArray *filteredArray = [[NSMutableArray alloc]init];
for (NSDictionary *dic in myArray){
int age = [[dic objectForKey:@"age"]intValue];
if (age < 18){
float weight = [[dic objectForKey:@"weight"]floatValue];
if (float < 50){
string name = [dic objectForKey:@"name"];
if (![string rangeOfString:@"bla"].location == NSNotFound) {
[filteredArray addObject:dic];
}
}
}
}
另一個優雅的解決方案是使用枚舉塊和謂詞來檢查您的字典內容,但我在 Objective-C 中不太習慣這樣做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.