这两种格式之间的有用区别是什么
request.sortDescriptors = [NSSortDescriptor(key:"dateCreated", ascending: false)]
和
request.sortDescriptors = [NSSortDescriptor(key: #keyPath(Note.dateCreated), ascending: false)]
在第二种格式中,#keyPath使我感到困惑。到底是什么,我在哪里可以了解到更多信息?
答案 0 :(得分:2)
两者之间没有区别
key:"dateCreated"
和
key: #keyPath(Note.dateCreated)
都将使用Note
对象的dateCreated
属性进行排序
后者的优点是可以避免用硬编码问题,而用datCreated
而不是dateCreated
会引发编译时错误,因此可以安全地避免在相同情况下前者肯定会发生的运行时崩溃情况