【发布时间】:2018-04-06 08:54:48
【问题描述】:
谁能帮我理解为什么我无法将 middleName 参数设置为一个值?我已经将它声明为一个可选的,但是每当我尝试初始化它时,我总是在 getFullName() 函数中的保护语句中运行 nil。
var firstName: String
var middleName: String?
var lastName: String
init(firstName: String, middleName: String, lastName: String)
{
self.firstName = firstName
self.middleName? = middleName
self.lastName = lastName
}
func getFullName() -> String
{
guard let midName = self.middleName else
{
return "\(firstName) \(lastName)"
}
return "\(firstName) \(midName) \(lastName)"
}
let person = Person(firstName: "Foo", middleName: "Bar", lastName: "FooBar")
打印时的返回值为“Foo Foobar”。这是为什么?
【问题讨论】:
标签: swift