【发布时间】:2016-12-14 04:35:10
【问题描述】:
我现在有个需求,这个需求是用NSPredicate在另一个数组过滤器中使用一个数据数组。在 Object-C 中是这样工作的:
NSArray * arr1 = @[@1,@2,@3];
NSArray * arr2 = @[@2,@3,@4,@5];
NSPredicate * filterPredicate = [NSPredicate predicateWithFormat:@"NOT (SELF IN %@)",arr1];
NSArray * filter = [arr2 filteredArrayUsingPredicate:filterPredicate];
通过这种方法,我可以得到filter,这个数组中的元素不包含在arr1中。但是我在Swift 3.0上找不到相关方法。如果我能得到所有帮助,我将不胜感激
【问题讨论】:
-
在 Swift 中几乎没有理由使用
NSArray,而NSPredicate可以用更简单的设计代替,大多数时候 -
与几乎所有翻译案例(对于编程语言和人类语言)一样,不要尝试将每个单词换成对应的单词。相反,要理解短语的语义(含义),然后将其翻译成最适合新语言的新短语。它不一定与源短语完全相似,但会产生更好的结果。
标签: arrays swift3 nspredicateeditor