gpt4 book ai didi

swift - NSPredicate - 转换参数?

转载 作者:搜寻专家 更新时间:2023-11-01 06:32:10 24 4
gpt4 key购买 nike

知道如何在 Swift 3 中做到这一点吗?

let number: NSArray = [123, 456, 678]
let check = "1"
let predicate = NSPredicate(format: "number.stringValue CONTAINS %@", check)

number.filtered(using: predicate)

问题是 .stringValue。知道如何在不使用 block 谓词和不使用标准过滤器函数的情况下使用上述谓词来完成此操作吗?

最佳答案

数组变量的名称(此处为“number”)不是数组元素的键路径的一部分,因此它只是:

let number: NSArray = [123, 456, 678]
let check = "6"
let predicate = NSPredicate(format: "stringValue CONTAINS %@", check)

print(number.filtered(using: predicate)) // [456, 678]

或者用“SELF”,如果你想更明确:

let predicate = NSPredicate(format: "SELF.stringValue CONTAINS %@", check)

“SELF”关键字在《Predicate Programming Guide》的Predicate Format String Syntax中有解释:

SELF
Represents the object being evaluated.

关于swift - NSPredicate - 转换参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45661509/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com