Ich habe eine Notwendigkeit, jetzt diese Anforderung ist ein Array von Daten in einem anderen Array-Filter mit NSPredicate
zu verwenden. In Object-C es funktioniert wie unten:Ich möchte Array-Filter-Array von NSPredicate von swift3.0
NSArray * arr1 = @[@1,@2,@3];
NSArray * arr2 = @[@2,@3,@4,@5];
NSPredicate * filterPredicate = [NSPredicate predicateWithFormat:@"NOT (SELF IN %@)",arr1];
NSArray * filter = [arr2 filteredArrayUsingPredicate:filterPredicate];
Durch dieses Verfahren kann ich Filter, T er Elemente in diesem Array sind nicht im arr1.But enthält wir nicht verwandte Methoden auf Swift finden 3.0 . Wenn ich alle Hilfe bekommen kann, würde ich es sehr schätzen
Es gibt fast nie einen Grund 'NSArray' in Swift zu verwenden, und' NSPredicate' mit viel einfacheren Designs ersetzt werden, die meiste Zeit – Alexander
Wie bei fast allen Fällen der Übersetzung (für beide Programmiersprachen und Menschen Sprachen), ** versuche nicht, jedes Wort gegen sein Gegenstück auszutauschen. Verstehen Sie stattdessen die Semantik (die Bedeutung) der Phrase und übersetzen Sie sie dann in eine neue Phrase, die am besten zur neuen Sprache passt. Es ist nicht unbedingt der Quellphrase ähnlich, aber es ergibt ein viel besseres Ergebnis. – Alexander