如何快速初始化一个空对象?这就是我所拥有的,但它也需要参数
var userInfo:User = User()
init(email: String, isVerified: String, profileImageURL: String, reputation: String, twitterHandle: String, userName: String) {
self._email = email
self._isVerified = isVerified
self._profileImageURL = profileImageURL
self._reputation = reputation
self._twitterHandle = twitterHandle
self._userName = userName
}
Run Code Online (Sandbox Code Playgroud)
使用这样的可选属性创建类/结构
struct Employee {//struct or class
var name: String?
var number: String?
var position: String?
}
Run Code Online (Sandbox Code Playgroud)
然后你可以创建一个没有任何价值的对象,有一些价值
let emp = Employee()
let emp = Employee(name: nil, number: nil, position: nil)
let emp = Employee(name: "abc", number: nil, position: "xyz")
Run Code Online (Sandbox Code Playgroud)
通过创建具有默认值的 init 方法,可以在创建对象时忽略参数
struct Employee {
var name: String?
var number: String?
var position: String?
init(name: String? = nil, number: String? = nil, position: String? = nil) {
self.name = name
self.number = number
self.position = position
}
}
let emp = Employee()
let emp = Employee(name: "abc", number: "124", position: "xyz")
let emp = Employee(name: "abc", position: "xyz")
let emp = Employee(number: "124")
let emp = Employee(name: "abc", number: "124")
Run Code Online (Sandbox Code Playgroud)