Swift之for循环

forEach

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

for in
for in可以说比forEach好用太多

let numberList = [1,2,3,4,5]
 var result = ""
for num in numberList {
     result += "\(num) "
}

enumerated
普通的for循环无法拿到索引,通过关键字enumerated()可以拿到索引

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

迭代器遍历

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

indices
讲到遍历就离不开索引,startIndex 返回第一个元素的位置,对于数组来说,永远都是0,endIndex 返回最优一个元素索引+1的位置等同于count,如果数组为空,startIndex 等于endeIndex
enumerated获取了索引和值
那么如果我们想只遍历索引呢,可以使用indices获取数组的索引区间

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

Range

let numbers = [Int](2...7)
for i in 0...(numbers.count-1)
    print(numbers[i])
}

弃用
首先说一下,Swift 3.0 版本将会去掉沿用已经的 C 风格循环语法,以后此语法不会再swift中出现

for var i = 0; i < numberList.count; i++ {

         

         }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 尊重知识,转发请注明出处:Swift循环遍历集合方法总结 概要 2016年2月份我总结过OC循环遍历,文章在此:i...
    张云龙阅读 31,593评论 17 42
  • 53.计算字符 在字符串中获取字符值的数量, 可以使用字符串字符属性中的计数属性: let unusualMena...
    无沣阅读 1,250评论 0 4
  • 集合 这里的集合指的是建立在Sequence协议上的Collection协议。集合是稳定的序列,可以重复遍历而不会...
    Trigger_o阅读 1,004评论 0 2
  • Swift 数组使用有序列表存储 同一类型 的多个值,这点相对于Objective-C是有所不同的,OC中同一个数...
    兰帕德阅读 1,140评论 0 0
  • 创建数组 字面量创建 可以使用数组字面量来初始化一个数组,它是一种以数组集合来写一个或者多个值的简 写方式。数组字...
    迷心迷阅读 395评论 0 0

友情链接更多精彩内容