如何将 NSArray 转换为 Set?
How to convert NSArray to Set?
这里的大多数帖子都是关于如何将集合转换为 array.But 我想知道我是否可以将数组转换为 set.I 已经从解析和下载了我的数组想将它转换为一个集合,因为我希望用户编辑他们的详细信息,而我使用的表单生成器只需要接受一个集合数据类型。
这就是我 got.The "Subjects" 字段是一个 NSArray in Parse.
let subjects = Set(currentuser?.objectForKey("Subjects"))
基本上语法是正确的,但是编译器(我也是)不知道键 Subjects
的对象应该是一个数组。使用可选绑定来检查至少 NSObject
的数组是否符合数组中的项目可散列的要求(感谢 dan 指出):
if let userSubjects = currentuser?.objectForKey("Subjects") as? [NSObject] {
let subjects = Set(userSubjects)
}
如果 Subjects
的真实类型比 [NSObject]
更具体,请改用
这里的大多数帖子都是关于如何将集合转换为 array.But 我想知道我是否可以将数组转换为 set.I 已经从解析和下载了我的数组想将它转换为一个集合,因为我希望用户编辑他们的详细信息,而我使用的表单生成器只需要接受一个集合数据类型。 这就是我 got.The "Subjects" 字段是一个 NSArray in Parse.
let subjects = Set(currentuser?.objectForKey("Subjects"))
基本上语法是正确的,但是编译器(我也是)不知道键 Subjects
的对象应该是一个数组。使用可选绑定来检查至少 NSObject
的数组是否符合数组中的项目可散列的要求(感谢 dan 指出):
if let userSubjects = currentuser?.objectForKey("Subjects") as? [NSObject] {
let subjects = Set(userSubjects)
}
如果 Subjects
的真实类型比 [NSObject]
更具体,请改用