Swift中Array的Map
Swift中Array的Map
Swift中的Array
有一个Map方法,该方法可以遍历Array
中的所有元素,并且返回一个新的数组,这就给我们处理数组中的元素提供了方便。下面以一个简单的例子来说明这个Map的用法,该例子实现的功能是输入一个数字型的数组,然后通过Map
来获取一个大写汉字的数组。
如:let numbers = [16,58,510]
输出someArray = [壹陆,伍捌,伍壹零]
具体代码如下:
let digitalNum = [0:"零",1:"壹",2:"贰",3:"叁",4:"肆",5:"伍",6:"陆",7:"柒",8:"捌",9:"玖"]
let numbers = [16,58,510]
let chineseStrings = numbers.map {
(var number) -> String in
var outPut = ""
while number > 0 {
// 逐个取出字符串,然后拼接字符串
// 例如: 58
// Step1: outPut: 捌+ ""
// Step2: outPut: 伍 + 捌
outPut = digitalNum[number % 10]! + outPut
number /= 10
}
return outPut
}
print(chineseStrings) // 输出为:["壹陆", "伍捌", "伍壹零"]
numbers.map
后面的其实是一个尾随闭包,关于闭包的用法会在后面的博客中给予详细说明。