如何使用swift的高阶函数将一个结构数组的值映射/减少到另一个结构数组?当前,iam遍历数组并将每个值附加到新数组。是否有任何“快捷”方法将元素映射到其他元素?
/// Code sample
let priorityList = [Priority]()
let pushRowList = [PushRowList]()
for priority in priorityList {
let id = priority.priorityID
let state = priority.priorityState
let item = PushRowList(optionId: id, optionTitle: state)
pushRowList.append(item)
}
我希望使用map,reduce等“快捷”方法来执行操作。
答案 0 :(得分:7)
您只需使用map
,因为您只想访问数组每个元素的某些属性并使用它们来创建另一种类型。
let pushRowLists = priorityList.map{PushRowList(optionId: $0.priorityID, optionTitle: $0.priorityState}