1 //stride正向遍历
2 for index in stride(from: 1, to: 6, by: 1) {
3 print(index)
4 print(iosArray[index])
5 }
6
7 //stride正向跳跃遍历
8 for index in stride(from: 0, to: 6, by: 2) {
9 print(index)
10 print(iosArray[index])
11 }
12
13 //stride反向遍历
14 for index in stride(from: 6, to: 1, by: -1) {
15 print(index)
16 print(iosArray[index])
17 }
18
19 //stride through正向遍历
20 for index in stride(from: 0, through: 6, by: 1) {
21 print(index)
22 print(iosArray[index])
23 }
正如stride单词的含义“大步跨过”,使用这种方式遍历的好处自然是可以灵活的根据自己的需求遍历,比如我们有时需要遍历索引为偶数或者基数的元素,或者每隔3个元素遍历一次等等类似的需求都可以轻松实现;
1 //遍历数组
2 for (n, c) in iosArray.enumerated() {
3 print("\(n): \(c)")
4 }
5
6 //遍历字典
7 for (n, c) in iosDict.enumerated() {
8 print("\(n): \(c)")
9 }
1 //反向遍历数组
2 for (n, c) in iosArray.enumerated().reversed() {
3 print("\(n): \(c)")
4 }
5
6 //反向遍历字典
7 for (n, c) in iosDict.enumerated().reversed() {
8 print("\(n): \(c)")
9 }