玖叶教程网

前端编程开发入门

Swift学习笔记——控制流(int getmaxday控制流图)

主要学习内容:条件语句,循环语句

Swift的控制流相关语法和其他大部分开发语言区别并不大,这里会对各种语句的基本用法进行代码示例并说明。着重记录那些Swift的新的特性。

循环语句

循环语句中会涉及到break,和continue的使用方法,这两个关键字的用法和其他语言都是一样的,不懂可以自行查阅。

for循环

//for-in 方式 输出0-10

for index in 0...10 {

print(index)

}

//多数语言支持的方式输出0-10

for var index = 0;index <= 10;index++{

print(index)

}

可以使用for循环遍历数组,字典等集合类型的所有元素,上一篇已经说过了,这里不在赘述。

while循环

while condition {

//do something

}

//while循环方式 输出0-10

var index = 0

while index <= 10 {

print(index)

index++

}

repeat while循环

这种循环方式和大多数开发语言的do-while循环是一样的

//repeat while循环方式 输出0-10

var index = 0

repeat {

print(index)

index++

} while index <10

条件语句

根据不同的条件执行不同的代码块,在开发中使用频率很高

if语句

//输出 未成年

var age = 16

if age >=18 {

print("成年")

} else {

print("未成年")

}

switch语句

switch多用于条件分支很多的情况

//将会输出 状态为1

var status = 1

switch score {

case 1:

print("状态为1")

case 2:

print("状态为2")

case 3:

print("状态为3")

default:

print("其他状态")

}

不像oc或者大多数开发语言那样,如果case 1成功执行以后会继续执行下面的其他分支,Swift中某个case分支执行成功就会自动终止switch语句,无须显示的调用break语句。如果你想要贯穿到下一个case分支,可以在每个语句后加上 fallthrough语句。 Swift的switch语句还支持区间匹配,先下面的例子:

var score = 61

switch score {

case 0..<60:

print("学渣")

case 60..<80:

print("及格")

case 80..<90:

print("优秀")

case 90...100:

print("学霸")

default:

print("不合法的分数")

}

可以使用元组(tuple)在switch语句中同时测试多个值

var position = (0,0)//直角坐标系中的原点

switch position {

case (0,0):

print("原点")

case (0<..10, 0<..10)

print("第1象限")

case (0<..10, -10..<0)

print("第4象限")

case (-10..<0, 0<..10)

print("第2象限")

case (-10..<0, -10..<0)

print("第3象限")

default:

print("非法位置")

}

上面的代码表示了,在-10<=x<=10,-10<=y<=10,且不在x轴上y轴上,点的可能位置。

guard

guard 类似于if语句。guard语句总是有else语句

//如果guard的条件被满足,可以继续运行之后的代码,否自else分支会被执行,else 中必须退出下面可能走的分支,如break或return,或continue

func doSomething(str: String?)

{

guard let v = str

else {

return

}

// use v to do something

}

基本用法就这些,以后有特殊需求再看看吧,明天学习函数了!然后会看闭包(和OC中的block概念差不多)

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言