/**
16.3-可选链的返回值
通过可选链来调用相应的属性和方法
这个属性的值 这个方法的返回值
通过可选链调用取得的返回值会被包装成一个可续类型数据。
可选链有可能失效 返回nil,也有可能成功 返回值也会包装成可选值。
*/
class Person {
var name = ""
func whoami() -> String {
print("My name is \(name)")
return name
}
init(name: String) {
self.name = name
}
}
var p1: Person = Person.init(name: "Tom")
p1.name = "zhangsan"
p1.whoami()
var p0: Person?
p0 = p1
print(p0?.name)
print(p0!.name)
/**
打印出
Optional("zhangsan") // 也就是我们通过可选链调用属性或者方法的返回值是可选数据。
zhangsan
*/
let t: String? = p0?.name
let t1: String = p0!.name
print("------------------------->")
print(p0?.whoami())
print(p0!.whoami())
/**
My name is zhangsan
Optional("zhangsan")
*/
总结以上是内存溢出为你收集整理的16.3 Swift可选链的返回值全部内容,希望文章能够帮你解决16.3 Swift可选链的返回值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)