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 语句时一定要处理包括范围更小得情况
//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,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 ,s = 0, p = 0;b < 10 && s < 4 && p < 10; p++
{
if b == 2
{
continue
}
println("b是:\(b),\(s),\(p)")
println("b:\(b++)")
println("s:\(++s),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:0
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讲义》