从上限值到下限值的快速循环

时间:2018-11-06 08:15:48

标签: swift swift4

我有一个如下定义的Swift for循环:

 for i in 20...1 {
    array.append(i)
 }

但是我收到一条崩溃的消息

  Thread 1: Fatal error: Can't form Range with upperBound < lowerBound

解决方法是什么?

2 个答案:

答案 0 :(得分:4)

您需要反转范围:

for i in (1...20).reversed() {
    array.append(i)
}

答案 1 :(得分:2)

您不能以这种相反的顺序循环,如果您愿意,可以尝试以下方法:

for i in stride(from: 20, through: 1, by: -1) {
    array.append(i)
}