Swift中如何将两个数组对应元素拼接成指定格式的新数组?
Swift 数组合并成指定格式的实现方法
嘿,作为Swift新手碰到这种数组配对拼接的需求太正常啦!刚好你的两个数组长度一致,我给你两种实用的实现方式:
方法一:用zip + map(最简洁推荐)
Swift里的zip函数可以把两个数组对应位置的元素配对成元组,然后配合map就能快速把每一组元组拼接成你要的格式:
let A = ["91","91","49"] let B = ["9989898909","9089890890","9098979896"] // 合并生成目标数组 let combinedArray = zip(A, B).map { "\($0) \($1)" } print(combinedArray) // 输出:["91 9989898909","91 9089890890","49 9098979896"]
简单解释下:
zip(A, B)会生成一个序列,里面的元素是("91", "9989898909")、("91", "9089890890")这种对应位置的元组map遍历这个序列,把每个元组里的两个字符串用空格拼接起来,就得到了你要的结果
方法二:手动遍历索引(适合新手理解逻辑)
如果你对高阶函数还不太熟悉,也可以用最基础的for循环通过索引来拼接:
let A = ["91","91","49"] let B = ["9989898909","9089890890","9098979896"] var combinedArray: [String] = [] // 遍历数组索引(假设两个数组长度相同,要是不同可以加判断) for index in 0..<A.count { let combinedString = "\(A[index]) \(B[index])" combinedArray.append(combinedString) } print(combinedArray) // 同样得到目标数组
这种方式更直观,能清楚看到每一步是怎么取元素、拼接、添加到新数组的,适合刚开始学Swift的小伙伴理解过程。
内容的提问来源于stack exchange,提问作者Bhavani chada
相关产品推荐
相关产品推荐

