如何使用NSPredicate返回true?

时间:2017-09-25 03:39:28

标签: swift nspredicate

这是我的代码:

let newPredicate = NSPredicate(format: "true == %@")        
let y = newPredicate.evaluate(with: true)

print(y)

它始终返回false

如何使用NSPredicate返回true

2 个答案:

答案 0 :(得分:2)

%@占位符用于传递给NSPredicate(format:)调用的参数,如下所示:

let newPredicate = NSPredicate(format: "true == %@", true)

如果您想使用传递给evaluate(with:)的对象,请使用self

let newPredicate = NSPredicate(format: "true == self")
let y = newPredicate.evaluate(with: true)
print(y)

答案 1 :(得分:0)

如果您要查找始终为true的默认或后备谓词:

NSPredicate.init(value: true)