当通过关系从 CoreData 检索对象集合时,swift 给我一个 NSSet 而不是我预期的数组。
有什么方法可以将集合转换成数组吗?
代码:
var updateExercise : UserExercise?
destinationViewController?.userExerciseSets = self.updateExercise?.exercisesets as? [UserExerciseSet]
注意事项是
Cast from 'NSSet?' to unrelated type '[UserExerciseSet]' always fails
目标 VC 有 var : var userExerciseSets : [UserExerciseSet]?
最佳答案
你应该这样定义你的 NSManagedObject 模型:
class UserExercise: NSManagedObject {
@NSManaged var exercises: Set<Exercise>!
}
然后当你需要一个数组时,你可以简单地使用带有集合的数组构造函数。
let exercises = Array(userExercise.exercises)
关于ios - 将集合转换为数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42750390/