Swift基本使用-控制流(二)

前端之家收集整理的这篇文章主要介绍了Swift基本使用-控制流(二)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

控制流,同其他语言,if和switch用来进行条件判断操作,使用for-in、for、while和do-while处理循环操作。swift中条件的括号可以省略,语句块儿的括号必须存在。

var pass: NSMutableArray = []
var fail: NSMutableArray = []
let scores = [@H_301_10@59,@H_301_10@40,@H_301_10@79,@H_301_10@100,@H_301_10@61,@H_301_10@99]
for score in scores {
    if score > @H_301_10@60 {
        pass.addObject(score)
    } else {
        fail.addObject(score)
    }
}
println(pass)
println(fail)

在swift中,条件的判断必须是布尔值,如下判断的方式是错的,在Object-c中可以直接判断对象是否为nil,swift却是错的。
错误的写法

var cell: UITableViewCell? = tableView.dequeueReusableCellWithIdentifier("cell") as? UITableViewCell
if !cell {
}

正确的写法

if cell != nil {
    cell = UITableViewCell(style: UITableViewCellStyle.Default,reuseIdentifier: "cell") as UITableViewCell
}

swift中switch支持任意类型的数据以及各种比较操作,不再只是整数类型的相等。

let colorString: String = "red"
var color: UIColor? = nil
switch colorString {
    case "red":
    color = UIColor.redColor()
    break
case "green":
    color = UIColor.greenColor()
    break
case "yellow":
    color = UIColor.yellowColor()
    break
default:
    color = UIColor.blackColor()
}

可以用for-in遍历数组或者字典,遍历字典的时候需要两个变量来分别表示键值对。

let dict = [
    "LiaoNing": "ShenYang","HeBei":"ShiJiazhuang",]
//println
for (province,city) in dict {
    println("\(city) belong to \(province)")
}

使用while来做重复运算,知道条件不满足,循环结束。条件可以在开始也可以在结尾处。

var i = @H_301_10@0
while i < @H_301_10@10 { i = i + @H_301_10@1 }
do { i = i - @H_301_10@1 } while i > @H_301_10@0

在for循环中,也可以用..来表示范围,传统的for-in也可以,两者相同:

var count = @H_301_10@0
for i in @H_301_10@0.@H_301_10@.10 {
    count = count + i
}
//same to
for var i = @H_301_10@0; i< @H_301_10@10; ++i {
    count = count + i
}
原文链接:https://www.f2er.com/swift/326718.html

猜你在找的Swift相关文章