У меня есть NSMutableArray, который содержит список людей, теперь мне нужно получить список всех людей, где gender = male, как я могу это сделать? Должен ли я попасть в NSPredicates для этого?NSArray, как получить элементы на основе значения свойства
-1
A
ответ
2
Скопируйте эту NSArray
категорию в куда-то в вашем коде
@implementation NSArray (My)
-(NSArray*)arrayWithPredicate:(BOOL(^)(id obj))predicate {
NSMutableArray* objs = [NSMutableArray array];
[self enumerateObjectsUsingBlock:^(id o, NSUInteger idx, BOOL *stop) {
if (predicate(o)) {
[objs addObject:o];
}
}];
return objs;
}
@end
Тогда, когда вам нужно получить мужские из них:
NSArray* males = [people arrayWithPredicate:^BOOL(id obj) {
// Gender check
}];
Преимущество над NSPredicate
заключается в том, что вам не нужно использовать буквенную строну g, чтобы указать критерии (довольно беспорядок, если критерии сложны).
0
да, вы можете использовать, как это,
NSArray *filtered = [data filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"self.gender == %@", @"male"]];
NSLog(@"%@",filtered);
Смежные вопросы
- 1. Создайте NSSet из NSArray на основе свойства
- 2. Как получить элементы из NSArray
- 3. Как получить доступ `NSArray` элементы
- 4. Как фильтровать данные на основе значения свойства?
- 5. Преобразование свойства Json на основе значения свойства
- 6. google datastore как получить сущности на основе значения свойства
- 7. Как получить узлы в neo4j на основе значения свойства
- 8. Получить значения ключей NSArray
- 9. Как отключить элемент списка ListBox на основе значения свойства?
- 10. Как связать элементы с контроллером на основе свойства json
- 11. Получить значения NSArray из NSDictonary
- 12. Показать различные изображения на основе значения свойства
- 13. Как получить значение свойства класса на основе номера свойства
- 14. Условно включать компонент на основе значения свойства
- 15. Скопируйте NSArray и замените текстовые элементы на значения bool
- 16. Переключение анимации на основе значения свойства
- 17. WPF анимация на основе значения свойства
- 18. Изменение свойства элемента на основе связанного значения
- 19. Получение значения свойства на основе его значения атрибута столбца
- 20. NSArray Tokenize на основе ключа
- 21. Селектор на основе свойства css
- 22. NSPredicate для свойства объекта в NSArray NSArray
- 23. Удалить элементы из массива на основе значения
- 24. Как повторить значения NSArray
- 25. Сортировка NSArray на основе производного значения ... с заминки?
- 26. LINQ - Удалить элементы на основе значения
- 27. Как отделить значения NSArray?
- 28. Сортировка NSarray на основе целочисленного значения, хранящегося в массиве объектов
- 29. Изменение свойства в NSArray
- 30. Скрыть элементы управления на основе выбранного значения