发布于 2015-06-14 01:59:39 | 135 次阅读 | 评论: 0 | 来源: 网络整理
用类型检查操作符(is
)来检查一个实例是否属于特定子类型。若实例属于那个子类型,类型检查操作符返回true
,否则返回 false
。
下面的例子定义了两个变量,movieCount
和 songCount
,用来计算数组library
中 Movie
和 Song
类型的实例数量。
var movieCount = 0
var songCount = 0
for item in library {
if item is Movie {
++movieCount
} else if item is Song {
++songCount
}
}
println("Media library contains (movieCount) movies and (songCount) songs")
// prints "Media library contains 2 movies and 3 songs"
示例迭代了数组 library
中的所有项。每一次, for
-in
循环设置 item
为数组中的下一个MediaItem
。
若当前 MediaItem
是一个 Movie
类型的实例, item is Movie
返回 true
,相反返回 false
。同样的,item is Song
检查item是否为Song
类型的实例。在循环结束后,movieCount
和 songCount
的值就是被找到属于各自的类型的实例数量。