init(radiusname: String) { self.radiusname = radiusname }
}
class circumference {
var circumName: String?
var circumNumber: String?
var circumarea: String?
func buildingIdentifier() -> String? {
if circumName != nil {
return circumName
} else if circumNumber != nil {
return circumNumber
} else {
return nil
}
}
}
let circname = rectangle()
circname.print?[0] = radius(radiusname: "Diameter")
let printing = circle()
printing.area.append(radius(radiusname: "Units"))
printing.area.append(radius(radiusname: "Meter"))
circname.print = printing
var area = ["Radius": [35, 45, 78, 101], "Circle": [90, 45, 56]]
area["Radius"]?[1] = 78
area["Circle"]?[1]--
println(area["Radius"]?[0])
println(area["Radius"]?[1])
println(area["Radius"]?[2])
println(area["Radius"]?[3])
println(area["Circle"]?[0])
println(area["Circle"]?[1])
println(area["Circle"]?[2])
当我们使用 playground 运行上面的程序,得到以下结果。
Optional(35)
Optional(78)
Optional(78)
Optional(101)
Optional(90)
Optional(44)
Optional(56)
对于下标可选的值可以通过参考其下标值来访问。它可访问为 subscript[0], subscript[1]等。radius 的默认值下标首先被指定为 [35,45,78,101] 和 Circle[90,45,56]。然后,下标值作为 Radius[0] 至78,以及Circle[1]〜45。
链接链的多层次性
多个子类也可以凭借其超类的方法,属性和下标通过可选链接联系。
可选的多个链可以链接:
如果检索类型是不可选的,可选链会返回一个可选值。例如,如果字符串通过可选链就会返回字符串?值
复制代码class rectangle {
var print: circle?








