В target-C вы можете отфильтровать массив полученных результатов из основных данных следующим образом:
NSString *brand = @"honda";
NSPredicate *predicate = [NSPredicate predicateWithFormat:
@"brand like %@", brand];
NSArray *filteredArray = [results filteredArrayUsingPredicate:predicate];
Я пытаюсь сделать что-то подобное в Swift, но получаю различные ошибки:
let myResults = try context.fetch(fetchRequest)
let idPredicate = NSPredicate(format: "id >= 1000")
let idArray = (myResults as Array).filtered(using: idPredicate)
Я пробовал кастовать различными способами, такими как myResults as Sales
, но все еще получаю множество ошибок:
Редактировать:
В вышеприведенной версии,Я получаю серию предложений по исправлению, начиная с замены «использование» на «», которые приводят к большему количеству ошибок, если я принимаю какие-либо предложения.Когда вместо Array я пишу как Sales или альтернативно пишу idArray: Sales, я получаю «Невозможно принудительно привести Array к Sales»
Каков правильный синтаксис для этого в Swift 3 или 4?