39-Swift之(For...In...)循环的再次介绍

一 、 For 循环的情况说明

情况说明:
在程序开发当中,For循环使用的频率无疑是最高的。常用的Swift循环是递增式遍历。在Swift3.0后,C语言形式的For循环被彻底废弃。那我们怎么再去使用For 循环呢?请您往下看...

二 、 Swift 中的一般情况下的 For .. In .. 循环

1、对数组的循环

/**
 Swift 的For..In.. 循环
 */
let NumberArray = [110,119,120,112,211]
for i in NumberArray {
    /**
     注释:这里的 “i” 不再是索引下标值,而是数组里的对象
     */
    if i == 120 {
        print("你可以去医院了!")
    }
    print(i)
}

2、对字典的循环

let NameDictionary = ["name":"SB","name1":"EB","name2":"MD"]
for key in NameDictionary {
     print(key)
}

3、对字符串的循环

let StringStr = "NetWork小贱"
for i in StringStr.characters {
    print(i)
}

三 、逐渐递增的For 循环,回到 C 语言的样式

/**
 可以计数的For循环,是不是又回到 C 语言的样式
 */
let CountArray = [10,20,30,40,50]
for i in 0 ..< CountArray.count {
    print(i)
    /**
     获取数值
     */
    print(CountArray[i])
}

四 、递减的For 循环

/**
 递减的For 循环
 */

let DiminishArray = [100,200,300,400]

for i in (0..

五、 For .. In .. 的执行过程

/**
 For..In.. 的执行方法
 这是为遍历对象调用一个枚举方法,在对数组等结构进行遍历时,我们偶尔需要知道每次遍历的索引,那么就需要用到enumerated了,其返回对象是一个元组,形式为(x,y),x代表遍历的索引值,y代表遍历的元素
 */
let  principleArray = [11,22,33,44]

for (index ,i) in principleArray.enumerated() {
    /**
     index 是遍历元素的索引
     */
    print(index)
    /**
     i 是遍历元素的对象
     */
    print(i)
}

六 、 在For 循环中过滤一些数据

1、 第一种写法

/**
 我们有的时候想在循环的时候想过滤调一些不要的数据
 */

let NumberFilterArray = [1,4,5,6,8,10]
// 我们要过滤掉偶数
for i in NumberFilterArray.filter({i in !(i%2==0)}) {
    print(i)
}

2、第二种写法

/**
 另一种写法,获取所有偶数
 注意:
 Swift闭包可以省略参数且用$0匿名,第二个参数则用$1,以此类推。
 */
let NumberFilterArray = [1,4,5,6,8,10]
for i in NumberFilterArray.filter({$0%2==0}) {
    print(i)
}

你可能感兴趣的:(39-Swift之(For...In...)循环的再次介绍)