Swift控制流

Swift控制流

  • for 循环

Swift中使用for-in的形式来进行for循环,类似于C语言的for条件递增的循环方式在Swift 3之后被弃用。

for-in可以用来遍历一个区间(range)、序列(squence)、集合(collection)等里面的所有元素。例如之前说过的ArrayStringDictionarySet的遍历都使用for-in循环来进行。

for index in 1...5 {
   print(index)
}

上面遍历的元素是一组使用了闭区间操作符...表示的从1到5的数字,index依次被赋值为1-5。他是一个每次循环开始时被自动赋值的常量,这种情况下index在使用前不需要使用let index声明,只需要将他包含在循环的声明中,就可以对其隐式的进行声明。

如果你并不需要知道区间内每一项的值,可以使用_来代替上面的index忽略对值的访问,这种用法用于你只需要控制循环的次数,而不是遍历每一个值。

比如你想要输出10次Hello World

for _ in 1...10 {
   print("Hello World")
}

for-in来遍历数组、字符串等集合时,上面的方法只能获取到每个元素的值,有时我们还需要获取他对应的下标,这种方法在之前也提到过:

for (index,item) in arr3.enumerated() {
      print("第\(index)个元素是\(item)")
}

遍历字典的key&value也是用这种方法,要注意两个变量的顺序是固定的,第一个代表下标,第二个代表元素值,这是不会因为你变量名的变化而变化的。

  • while 循环

while循环运行一系列的语句直到条件变为false,Swift中的while循环有两种形式:

  • while循环,在每次循环开始时判断条件是否符合。
  • repeat-while循环,在每次循环结束时判断条件是否符合。(对,就是do-while

具体用法就不写了,跟C一样,给个例子吧:

var num = 10
while num < 100 {
    num += 1
    print(num)
}

var num2 = 10
repeat{
    num2 += 1
    print(num2)
} while num2 < 100

你可能感兴趣的:(Swift控制流)