我有struct
看起来像:
struct nameStruct {
let name: String
let index: Int
}
我有NSMutableArray
,其中包含此struct
现在,我用
填充namesDict
的内容
let namesDict:[String: Any] = ["names" : namesArray]
但是,因为我只需要index
对象进行排序,所以我只想将name
属性添加到字典中,如下所示:
let namesDict:[String: Any] = ["names" : namesArray.name]
或者,由于swift的性质:
let namesDict:[String: Any] = ["names" : (namesArray as! [nameStruct]).name]
(专注于.name部分,显然在Swift中不起作用)
现在,我最好的猜测是在循环中创建一个新数组,只添加name
内容的namesArray
- 但如果有办法在一个没有另一个数组的“中间”,这将是非常好的。
答案 0 :(得分:1)
您可以使用map
。
let namesDict: [String: Any] = ["names": namesArray.map({ ($0 as! nameStruct).name })]