Swift流程控制
发布时间:2020-12-14 02:44:37 所属栏目:百科 来源:网络整理
导读:1.if分支结构 2.switch case 3.while,do while 4.for循环,for in专门负责遍历字符串,范围,序列和集合等包含的元素 var a :Int? = 5 if a != nil { println ( "a为非空" ) } else { println ( "a为空" ) } //使用if else 语句时一定要处理包括范围更小得情
1.if分支结构 var a :Int? = 5
if a != nil
{
println("a为非空")
}
else
{
println("a为空")
}
//使用if else 语句时一定要处理包括范围更小得情况
//switch贯穿特定的case块
var num = 4
var des = "数值是(num)是"
switch num
{
case 2,3,4,6:
des += "质数,还是"
fallthrough
default:
des += "整数"
}
println(des)//数值是4是质数,还是整数
//switch的范围匹配,61...100(包括61和100)
var score = 100
switch score
{
case 61...100:
println("优秀")
default:
println("其它")
}
//grade会接收score1的值,并且grade会匹配所有剩下的值,因此不在需要default
var score1 = 100
switch score1
{
case 61...100:
println("优秀")
case let grade:
println("其它(grade)")
}
//循环语句while,do while循环,先循环在判断循环条件
var count = 0
while count < 10
{
println("(count)")
count++
}
println("循环结束(count)")
var count1 = 0
do
{
count1++
println("(count1)")
}
while count1 > 5
println("结束")
/*循环结果 0,0 b:0 s:1,p:0 1,1,1 b:1 s:2,p:1 2,2,2 b:2 s:3,p:2 3,3,3 b:3 s:4,p:3 */
for var b = 0,s = 0,p = 0;b < 10 && s < 4 && p < 10; p++
{
println("(b),(s),(p)")
println("b:(b++)")
println("s:(++s),p:(p)")
}
for var b = 0,p = 0;b < 10 && s < 4 && p < 10; p++
{
if b == 2
{
continue
}
println("b是:(b),p:(p)")
}
//for循环可以将初始化条件定义到循环体之外
var count2 = 0
// for循环里只放循环条件
/* 结果 count20 count21 count22 */
for ;count2 < 10;
{
if count2 == 3
{
// continue//当等于3时,忽略本次循环,循环还会继续
break
}
println("count2(count2++)")
}
var textname = "text.org"
for a in textname
{
println(a)
}
//只是想通过字符串的长度确定循环次数,可以用_代替常量
for _ in textname
{
println("厉害")
}
//for in 可以用于遍历范围,数组,字典等集合
var max = 7
for num in 1...max
{
println("(num)")
}
//break 既可以终止所在的循环,还可以直接结束外层循环,可以给外层循环添加outer标签,终止外层循环
//结果i:0,j:0/i:0,j:1
outer: for var i = 0 ; i < 5 ; i++
{
for var j = 0; j < 4; j++
{
println("i:(i),j:(j)")
if j == 1
{
//跳出outer标签所标识的循环
break outer
}
}
}
/*i:0,j:0 i:0,j:1 i:0,j:1 i:1,j:0 i:1,j:1 i:2,j:0 i:2,j:1 i:3,j:0 i:3,j:1 i:4,j:0 i:4,j:1 */
for var i = 0 ; i < 5 ; i++
{
for var j = 0; j < 4; j++
{
println("i:(i),j:(j)")
if j == 1
{
break
}
}
}
//通过return结束的是整个函数或方法,不论return处于多少层循环之内
来自《疯狂Swift讲义》 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |