<分区>
我想创建一个数组,其中包含另一个数组中的元素乘以某个 Int 值。
例子:
下面的代码
let arr = [1,2,3]
let multiplier = 3
print(function(arr, multiplier))
应该返回
[1,2,3,1,2,3,1,2,3]
我知道如何使用嵌套 for 循环实现它,但我正在寻找一些漂亮的函数式方法。我在考虑 map()
函数,但它迭代给定数组的每个元素,我想这不是我的用例。
标签 swift
<分区>
我想创建一个数组,其中包含另一个数组中的元素乘以某个 Int 值。
例子:
下面的代码
let arr = [1,2,3]
let multiplier = 3
print(function(arr, multiplier))
应该返回
[1,2,3,1,2,3,1,2,3]
我知道如何使用嵌套 for 循环实现它,但我正在寻找一些漂亮的函数式方法。我在考虑 map()
函数,但它迭代给定数组的每个元素,我想这不是我的用例。
最佳答案
主要思想:
flatMap
到一维数组。例子:
let arr = [1, 2, 3]
let multiplayer = 3
print(Array(repeating: arr, count: multiplayer).flatMap({ $0 }))
关于swift - 如何通过以函数方式乘以另一个数组来创建数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46052928/