我有一个数组
var names:[String]=["kate","son","viktor"]
我想将此数组保存在核心数据或Realm中。此数组动态更改
var names:[String]=["kate","son","viktor","sam"]
如何比较此数组和打印更改。例如:名称“ Sam ”的更改。感谢您提供任何帮助(想法)或链接。
答案 0 :(得分:1)
在 Realm 中,您只需将数组序列化/反序列化为Data
(或String
),如下所示:
class SomeModel: Object {
dynamic var _names: Data!
var names: [String] {
set(value) {
try! realm.write {
_properties = try! JSONSerialization.data(withJSONObject: value, options: [])
}
}
get {
guard _names != nil else { return [] }
return try! JSONSerialization.jsonObject(with: _names, options: []) as? [String] ?? []
}
}
}
这会将您的数组存储在Realm中,但显然不允许您使用数组中的名称进行排序或查询。
您最好将每个名称存储在适当的模型对象中,并在基础对象中创建一对多属性(使用Realm的List
)