有没有办法立即生成一个数组,其中填充了 Swift 中递减值的范围?
Is there a way to instantly generate an array filled with a range of decreasing values in Swift?
我知道你可以用 Array(0...10)
生成一个正常范围,但是反过来呢?
例如:
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
你可以这样做:
let tenToZero: [Int] = (0...10).reversed()
注意这里必须指定类型,否则会使用reversed
的重载,即returns a ReversedCollection
.
或者,您可以使用任一 stride
函数并使用 -1 作为 by
参数:
示例:
let tenToZero = Array(stride(from: 10, through: 0, by: -1))
我知道你可以用 Array(0...10)
生成一个正常范围,但是反过来呢?
例如:
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
你可以这样做:
let tenToZero: [Int] = (0...10).reversed()
注意这里必须指定类型,否则会使用reversed
的重载,即returns a ReversedCollection
.
或者,您可以使用任一 stride
函数并使用 -1 作为 by
参数:
示例:
let tenToZero = Array(stride(from: 10, through: 0, by: -1))