Swift鏈接可選返回值的方法
鏈接可選返回值的方法
前麵的例子解釋了如何通過可選鏈來獲得可選類型屬性值。你也可以通過可選鏈調用一個返回可選類型值的方法並按需鏈接該方法的返回值。
下麵的例子通過可選鏈調用了Address
類中的buildingIdentifier
方法。這個方法的返回值類型是String?
。如上所述,這個方法在可選鏈調用後最終的返回值類型依然是String?
:
if let buildingIdentifier = john.residence?.address?.buildingIdentifier() {
println("John's building identifier is \(buildingIdentifier).")
}
// 打印 "John's building identifier is The Larches."。
如果你還想進一步對方法返回值執行可選鏈,將可選鏈問號符放在方法括號的後麵:
if let upper = john.residence?.address?.buildingIdentifier()?.uppercaseString {
println("John's uppercase building identifier is \(upper).")
}
// 打印 "John's uppercase building identifier is THE LARCHES."。
注意:
在上麵的例子中,你將可選鏈問號符放在括號後麵是因為你想要鏈接的可選值是buildingIdentifier
方法的返回值,不是buildingIdentifier
方法本身。