0
点赞
收藏
分享

微信扫一扫

swift 数组遍历 forEach 、enumerated、iterator、indices


//: A UIKit based Playground for presenting user interface

import UIKit
let fiveZs = Array(repeating: "Z", count: 5)
//数组遍历
//for in
//for each
// 无法使用break 或continue跳出或者跳过循环
// 使用retrun 只能退出当前一次的循环体

let numbers=[Int](0...7)
numbers.forEach{
    (num) in
    if(num==3){
    return
    }
    print(num)
}


普通的for循环无法拿到索引

通过关键字enumerated()可以拿到索引

//: A UIKit based Playground for presenting user interface

import UIKit
let fiveZs = Array(repeating: "Z", count: 5)
//数组遍历
//for in

let numbers=[Int](0...7)
for (index,num) in numbers.enumerated(){
    print("the index is :\(index)")
    print(num)
}

the index is :0

0

the index is :1

1

the index is :2

2

the index is :3

3

the index is :4

4

the index is :5

5

the index is :6

6

the index is :7

7

迭代器遍历

//: A UIKit based Playground for presenting user interface

import UIKit
let fiveZs = Array(repeating: "Z", count: 5)
//数组遍历
//iterator

let numbers=[Int](0...7)
var numInerator = numbers.makeIterator()
while let num = numInerator.next() {
   
    print(num)
}


讲到遍历就离不开索引

startIndex 返回第一个元素的位置,对于数组来说,永远都是0

endIndex 返回最优一个元素索引+1的位置等同于count

如果数组为空,startIndex 等于endeIndex

enumerated获取了索引和值

那么如果我们想只遍历索引呢

可以使用indices获取数组的索引区间

//: A UIKit based Playground for presenting user interface

import UIKit
let numbers = [Int](2...7)
for i in numbers.indices{
    print(numbers[i])
}


举报

相关推荐

0 条评论