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后面的其实是一个尾随闭包,关于闭包的用法会在后面的博客中给予详细说明。

原文地址:https://www.cnblogs.com/Mike-Fighting/p/5289001.html