[英]realm uniqueValueForObject Swift3
如何編寫swift3語法? Swift3 AnyObject修改,無功能
swift2:
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嗎?
如果從字面上看這只是為Swift 3更新Realm Swift 2語法的問題,那么它應該看起來像這樣:
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
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.