我正在创建自己的类,用于存储与用户相关的信息。就像swiftyJSON框架一样,我想把数据看作变量是字典。
实施例,
使用SwiftyJSON时,您可以运行如下所示的代码:
let x = JSON["x"]
let y = JSON["y"].strVal
let x = JSON["z"].intVal
我想做的是拥有如下所示的课程:
class User
{
private (set) public var DATA:[String:Any]
public init(){}
public function login(username:String, password:String)
{
//Login code here
self.DATA = loginResult
}
}
let user = User()
user.login(username:"username", password:"password")
let name = user["name"].strVal
我怎样才能在swift中写这个?
答案 0 :(得分:1)
您想使用subscript
:
class User
{
private (set) public var DATA:[String:Any]
public init(){}
public function login(username:String, password:String)
{
//Login code here
self.DATA = loginResult
}
subscript(key: String) -> Any? {
return DATA[key]
}
}
let user = User()
user.login(username:"username", password:"password")
let name = user["name"].strVal
您可能希望将DATA
存储为SwiftyJSON,因此您可以在其上调用strVal
等 - 只需根据需要更新支持属性和下标签名。