有没有办法在Swift中即时生成一个填充了一系列值的数组?

9njqaruj  于 2023-02-28  发布在  Swift
关注(0)|答案(4)|浏览(120)

在python中,我可以生成一个值数组
示例:

arr = range(0,30)

有没有办法在Swift中即时生成一个填充了一系列值的数组?

tuwxkamq

tuwxkamq1#

您可以创建一个范围如下的数组:

var values = Array(0...100)

这给予一个[0, ..., 100]数组

pgx2nnw8

pgx2nnw82#

您可以创建一个范围并将其Map到数组中:

var array = (0...30).map { $0 }

map闭包只返回range元素,得到一个数组,其元素都是range中包含的整数。当然,也可以生成不同的元素和类型,例如:

var array = (0...30).map { "Index\($0)" }

其产生串阵列Index0Index1等。

vuktfyat

vuktfyat3#

您可以使用此函数创建包含相同值的数组,令array = Array(重复:5,计数:10)
或者如果你想从范围中创建一个数组你可以这样做

let array = [Int](1...10)

在本例中,您将获得一个包含整数值(从1到10)的数组

vxf3dgd4

vxf3dgd44#

创建一个从0到N-1的整数数组

var arr = [Int](0..<N)

创建一个从0到N-1的浮点数组

var arr = (0..<N).map{ Float($0) }

创建从0到2π的浮点数组,包括2π步长0.1

var arr:[Float] = stride(from: 0.0, to: .pi * 2 + 0.1, by: 0.1).map{$0}
or
var arr:[Float] = Array(stride(from: 0.0, to: .pi * 2 + 0.1, by: 0.1))

相关问题