Swift条件语句与循环
一、条件语句:
条件语句通过设定的一个或多个条件来执行程序,在条件为真时执行指定的语句,在条件为 false 时执行另外指定的语句。
-
if
语句:
if <#condition#> {
<#code#>
}
-
if…else
语句
if <#condition#> {
<#statements#>
} else {
<#statements#>
}
-
switch
语句:
switch expression {
case expression1 :
statement(s)
case expression2, expression3 :
statement(s)
fallthrough /* 可选 */
default : /* 可选 */
statement(s);
}
注:在大多数语言中,switch 语句块中,case 要紧跟 break,否则 case 之后的语句会顺序运行,而在 Swift 语言中,默认是不会执行下去的,switch 也会终止。如果你想在 Swift 中让 case 之后的语句会按顺序继续运行,则需要使用 fallthrough 语句。
4.? : 运算符
条件运算符 ? :,可以用来替代if...else语句。它的一般形式如下:
Exp1?Exp2:Exp3
其中,Exp1、Exp2 和 Exp3 是表达式。请注意,冒号的使用和位置。
? 表达式的值是由 Exp1 决定的。如果 Exp1 为真,则计算 Exp2 的值,结果即为整个 ? 表达式的值。如果 Exp1 为假,则计算 Exp3 的值,结果即为整个 ? 表达式的值。
二、循环语句
- for-in 循环
遍历一个集合里面的所有元素,例如由数字表示的区间、数组中的元素、字符串中的字符。
Swift3.0已经废弃
for (var i = 0; i < 10; i++) {
print(i)
}
for <#item#> in <#items#> {
<#code#>
}
举三个for循环的例子:
(1)for in循环
// 0 到 9,开区间操作
for i in 0..<10 {
print(i)
}
// 0 到 10:闭区间操作
print("0 到 10")
for i in 0...10 {
print(i)
}
let someInt = [23,34,4,56,23]
for value in someInt {
print(value)
}
(2)enumerated
for (index, value) in someInt.enumerated() {
print("\(index) = \(value)")
}
(3)可变步长
// 从0到20
for i in stride(from: 0, to: 20, by: 1) {
print(i)
}
// 从20到0
for i in stride(from: 20, to: 0, by: -1) {
print(i)
}
- while 循环
运行一系列语句,如果条件为true,会重复运行,直到条件变为false。
while <#condition#> {
<#code#>
}
例:
var i = 10
while i<20 {
print(i)
i+=1
}
3.repeat while循环
类似 while 语句区别在于判断循环条件之前,先执行一次循环的代码块。
repeat
{
statement(s);
}while( condition );
例:
repeat {
print(i)
i+=1
} while(i < 30)
循环控制语句改变你代码的执行顺序,通过它你可以实现代码的跳转。Swift 以下几种循环控制语句:
continue:
Swift continue语句告诉一个循环体立刻停止本次循环迭代,重新开始下次循环迭代。对于for循环,continue语句执行后自增语句仍然会执行。对于while和do...while循环,continue语句重新执行条件判断语句。
break:
如果您使用的是嵌套循环(即一个循环内嵌套另一个循环),break 语句会停止执行最内层的循环,然后开始执行该块之后的下一行代码。