import Foundation
class IntArray{
//嵌套定义一个表示异常信息的枚举
enum ArrayError:Error {
case EmptyError,OutOfRangeError
}
var array = [Int]()
func show(i:Int)throws -> Void {
guard !array.isEmpty else{
throw ArrayError.EmptyError
}
guard i >= 0 && i < array.count else{
throw ArrayError.OutOfRangeError
}
print(array[i])
}
}
var myArr = IntArray()
myArr.array = [23,14,12]
do{
try myArr.show(i: 5)
}
catch IntArray.ArrayError.EmptyError{
print("数组为空")
}
catch IntArray.ArrayError.OutOfRangeError{
print("下标越界")
}
class Cow{
var name = ""
var legs:leg?
class leg{
var numberOfLegs = 0
}
func show() {
if let legs = legs?.numberOfLegs {
print("品种:\(name),腿数:\(legs)")
}else{
print("品种:\(name)")
}
}
}
var cow = Cow()
cow.name = "新西兰牛"
cow.legs = Cow.leg()
cow.legs?.numberOfLegs = 4
cow.show()
Swift_嵌套类型
最新推荐文章于 2022-03-10 18:19:26 发布