Swift学习笔记-控制结构

参考书籍:
[1]管蕾.张玲玲.朱元波.Swift开发实战[M]. 北京:人民邮电出版社.2014.10-1 ISBN 978-7-115-36827-0
[2]陈隽.刘媛媛.Swift入门很简单[M]. 北京:清华大学出版社.2015.01-01 ISBN 978-7-302-38880-7

一、if语句

if value<4{
}else if value<7{

}

二、switch 语句
1、基本语句

switch (表达式)
{
case 常量或常量表达式:语句 //执行语句不可为空
case 常量或常量表达式:语句 //如果case 后面常量或常量表达式相同,陈旭只会执行最先发现值相等的分支语句
default:语句
}

2、范围匹配

switch(){
case 0...10:
case 11...20:
}

3、使用元组

import Foundation
let somePoint = (1,1)
switch somePoint{   //这个相当经典,用来判定坐标
case (0,0):print("Origin Point") //原点
case (_,0):print("x shaft") //x轴
case (0,_):print("y shaft")
case (-2...2,-2...2):print("range in Rect") //矩形范围内
default: print("out of Rect") 
}

终端:

range in Rect
Program ended with exit code: 0

4、数值绑定
在case匹配时,将switch语句值绑定给一个指定的变量或常量,以便在case语句中使用。

import Foundation
let point = (2,0)
switch point{
case (let x,0):print("x:\(x) ") //绑定常量 x,并且可以在print中使用
case (0,var y):print("y: \(y)") //绑定变量 y,并且可以在print中使用
case let(x,y):print("x:\(x),y:(y)")//绑定常量x,yx,并且可以在print中使用
//此示例,1,3条件都满足,但是switch满足多个条件时,只会执行最先满足的条件,其它不会执行。
}

终端:

x:2 
Program ended with exit code: 0

5、使用Where关键字
switch 语句中可以使用where关键字增加判断条件

import Foundation
let point = (1,-1)
switch point{
case let(x,y) where x==y:print("Equal")
case let(x,y) where xy:print("Greater than")
default:print("default")
}

终端:

Greater than
Program ended with exit code: 0

三、循环结构
1、for 后面是常量

for index in 1...5{

}

2、省略常量

for _ in 1...100{
//此时循环中的值就无法使用了
}

3、数组

var string="Hello"
var ch=[1,2,3] //等等这样直接用都可以

4、for-conditon-increment 条件循环

for value=1;value<=100;value++{
}

四、while

while i<=5{
}
do{
}where i<4

五、跳转语句
1、continue
2、break
3、fallthrough
使用在switch代码块中,实现依次执行每个case语句
4、标签语句
可以使用标签标记循环体或switch,当使用break或continue语句是,带上标签,就可以控制跳转该标签语句代表的循环或switch。

标签名称:while 表达式{} //定义 标签名称符合标识符规范
break 标签名称 //使用