Swift - 流程控制
顺序结构
分支结构
if条件语句
// 1、第一种形式
if expression {
statements...
}
// 2、第二种形式
if expression {
statements...
}else {
statements...
}
// 3、第三种形式
if expression {
statements...
}else if expression {
statements...
}else {
statements...
}
var isLogin = true
if isLogin {
print("已登录!")
}
// 输出 已登录
var isLogin = false
if isLogin {
print("已登录!")
}else {
print("未登录!")
}
// 输出 未登录!
var score = 90
if score >= 90 {
print("优秀")
}else if score >= 70 {
print("及格")
}else {
print("一般")
}
// 输出 优秀
switch分支语句
switch expression {
case value1:
statements...
case value2,value3:
statements...
case valueN:
statements...
default:
statements...
}
var score = "C"
// 执行switch分支语句
switch score {
case "A":
print("优秀")
case "B","C":
print("良好")
case "D":
print("及格")
case "E":
print("不及格")
default:
print("输入错误")
}
// 输出 良好
不存在隐式贯穿
let score = "A"
switch score {
case "A":
case "a":
print("优秀")
case "B":
case "b":
print("良好")
case "C":
case "c":
print("及格")
case "D":
case "d":
print("不及格")
default:
print("输入错误")
}
let score = "A"
switch score {
case "A","a":
print("优秀")
case "B","b":
print("良好")
case "C","c":
print("及格")
case "D","d":
print("不及格")
default:
print("输入错误")
}
区间匹配- let score = 90
switch score {
case 90...100:
print("优秀")
case 70..<90:
print("良好")
case 60..<70:
print("及格")
case 0..<60:
print("不及格")
default:
print("成绩错误")
}
// 输出 优秀
元组匹配
循环结构
For循环Swift 提供两种 for 循环形式以来按照指定的次数多次执行一系列语句:
for-in循环
for (let/var) 常量/变量名/_ in 字符串/范围/集合 {
statements...
}
// 1、遍历范围
for var index in 1...5 {
print("(index) * 5 = (index * 5)")
}
// 1 * 5 = 5
// 2 * 5 = 10
// 3 * 5 = 15
// 4 * 5 = 20
// 5 * 5 = 25
// 2、遍历数组
let cards = ["A","K","Q","J"]
for card in cards {
print(card)
}
// 依次输出:A、K、Q、J
// 3、遍历字符串
let string = "Swift"
for ch in string.characters {
print(ch)
}
// 依次输出:S、w、i、f、t
// 4、忽略元素遍历
for _ in "ABC".characters {
print("忽略元素遍历")
}
// 忽略元素遍历
// 忽略元素遍历
// 忽略元素遍历
for循环
for 初始化语句; 循环条件; 迭代语句 { 循环体 }
// 使用循环计算计算0~100的和
var sum = 0
for var i = 0; i <= 100; i++ {
sum += i
}
print("sum is '(sum)'.") // 输出 sum is '5050'.
While循环
While循环
初始化语句
while 循环条件 { 循环体 迭代语句 }
// 1、初始化语句
var sum = 0
var index = 0
// 2、循环条件
while index <= 100 {
// 3、循环体
sum += index
// 4、迭代语句
index++
}
print("sum is '(sum)'.") // 输出 sum is '5050'.
Repeat-While循环
初始化语句
repeat {
循环体
迭代语句
}while 循环条件
var index = 0
repeat {
sum += index
index++
}while index <= 100
print("sum is '(sum)'.") // 输出 sum is '5050'.
控制转移语句
continue
for flag in 1...5 {
if flag == 3 {
continue
}
print("current index is '(flag)'.")
}
// current index is '1'.
// current index is '2'.
// current index is '4'.
// current index is '5'.
break
for var k = 0; k < 5; k++ {
if k == 3 {
break
}
print("k is '(k)'.")
}
// k is '0'.
// k is '1'.
// k is '2'.
fallthrough
var tag = 0
var results: String = String()
switch tag {
case 0:
results += "A"
print(results)
fallthrough
case 1:
results += "B"
print(results)
fallthrough
default:
results += "C"
print(results)
}
// A
// AB
// ABC
return
func test() {
var i = 0
i++
return // 结束方法(函数)
print(i) // 此句永远无法被执行
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |