NSPredicate在Swift Playground中不起作用信号SIGABRT

问题描述

我创建了一个Swift Playground来测试一些nspredicate东西。但是它没有运行。这是代码

import Foundation

class Person: NSObject {
    let name: String
    let age: Int
    let married: Bool
    
    init(name: String,age: Int,married: Bool) {
        self.name = name
        self.age = age
        self.married = married
    }
}

let p1 = Person(name: "Person 1",age: 32,married: true)
let p2 = Person(name: "Person 2",age: 61,married: true)
let p3 = Person(name: "Person 3",age: 45,married: false)

let ppl: NSArray = [p1,p2,p3]

let filter_name1 = nspredicate(format: "name = 'Person 1'")
ppl.filtered(using: filter_name1)

运行时出现错误(最后一行):

error: Execution was interrupted,reason: signal SIGABRT.

在游乐场的日志中,我看到:

libc++abi.dylib: terminating with uncaught exception of type NSException

我无法弄清楚这里出了什么问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)