Swift集合类型高阶函数(一)
Map(swift 5.3)的使用
对集合类型中的每一个元素做一次处理,转换为新数组
数组系列
- 案例1 - 遍历每个元素
let colors = ["red", "yellow", "green", "blue"]
let counts = colors.map { (color: String) -> Int in
return color.count
}
print(counts)
结果是 [3,6,5,4]
- 案例2 - 更加简单的方法
let counts1 = colors.map { $0.count }
print(counts1)
结果也是 [3,6,5,4]
- 案例3 - 转换为对象数组(请问下转换为对象数组干啥用)
class Color {
var name: String
init(name: String) {
self.name = name
}
}
let colorsObj = colors.map { return Color(name: $0) }
for obj in colorsObj {
print(obj.name)
}
结果是
red
yellow
green
blue
集合系列
let ColorsSet: Set = ["red", "yellow", "green", "blue"]
let colorsCount = ColorsSet.map { $0.count }
print(colorsCount)
结果是[3, 6, 4, 5]
字典系列
let dict = [2: "red", 4: "yellow", 6: "green", 8: "blue"]
let keys = dict.map { $0.key }
print(keys)
let values = dict.map { $0.value }
print(values)
结果分别是
[2, 8, 6, 4]
["red", "blue", "green", "yellow"]
版权声明
由 durban创作并维护的 Gowhich博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 博客( https://www.gowhich.com ),版权所有,侵权必究。
版权声明
由 durban创作并维护的 Gowhich博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 Gowhich博客( https://www.gowhich.com ),版权所有,侵权必究。