gpt4 book ai didi

ios - RLMObjects 在 Realm Cocoa 中不被识别为相同

转载 作者:可可西里 更新时间:2023-11-01 01:06:04 25 4
gpt4 key购买 nike

我有一个包含 RLMObject 的 tableView,我想搜索包含特定 RLMObject 的行。在将 RLMResult 对象转换为其原始类型后,它与其原始对象不同:

    // ... adding a todoA with !isCompleted to defaultRealm()
var firstItem = Todo.objectsWhere("isCompleted == false")[0] as! ToDo
if firstItem == todoA {
// todoA is != firstItem even-though they should be the same object
}

如何在不实现主键分配的情况下比较两个 RLMObject?

最佳答案

RLMObject 不符合 Swift 的 Equatable 协议(protocol),允许 ==!= 比较。根据您想要的对象的相等语义,您可以在 RLMObject 上使用以下扩展:

extension RLMObject: Equatable {}
func == <T: RLMObject>(lhs: T, rhs: T) -> Bool {
return lhs.isEqualToObject(rhs)
}

关于ios - RLMObjects 在 Realm Cocoa 中不被识别为相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29812608/

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