如何编写 swift3 语法? Swift3 AnyObject 修改,无功能
swift 2:
func uniqueValueForObject<U : Equatable>(objectKey: String, paramKey: String, type: U.Type)->[U]{
var uniqueValues : [U] = [U]()
for obj in self {
if let o = obj.valueForKeyPath(forKeyPath: objectKey) {
o.
if let v = o.valueForKeyPath(paramKey){
if(!uniqueValues.contains(v as! U)){
uniqueValues.append(v as! U)
}
}
}
}
return uniqueValues
}
谁能帮忙写一下swift3吗?
最佳答案
如果这实际上只是将 Realm Swift 2 语法更新为 Swift 3,那么它应该如下所示:
extension Results {
func uniqueValueForObject<U: Equatable>(objectKey: String, paramKey: String, type: U.Type) -> [U] {
var uniqueValues: [U] = [U]()
for obj in self {
if let o = obj.value(forKeyPath: objectKey) {
if let v = (o as AnyObject).value(forKeyPath: paramKey) {
if !uniqueValues.contains(v as! U) {
uniqueValues.append(v as! U)
}
}
}
}
return uniqueValues
}
}
关于ios - 对象 Swift 3 的 Realm 唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41560858/