Type的值没有成员Value Swift 3给出错误

Rag*_*pra 1 ios swift3

我正在将我的代码从swift 2.1更改为swift 3,我正在面对这些错误的语法查询

错误1:类型的值没有成员值

Alamofire.request(url).responseJSON() {
            (JSON) in
            switch JSON.result {
            case .success(let data):
             let user_id=String(data.value(forKey: "UserLoginResult")?.value(forKey: "UserID") as! Int)
Run Code Online (Sandbox Code Playgroud)

我怎么能解决这个问题另外还有一个错误

错误2:二元运算符.. <不能应用于Int和Int类型的操作数?

var serviceProvicedListArray:NSMutableArray? = NSMutableArray()

 let resultObjectItems = self.serviceProvicedListArray!.value(forKey: "lstActType")

for i in 0..<Int(resultObjectItems[0])!{
Run Code Online (Sandbox Code Playgroud)

我怎么能解决同样的问题,我是swift 3的新手,请帮助!! 提前致谢

Nir*_*v D 5

您需要指定Dictionary要访问其值的数据类型.

case .success(let data): 
    var userId = ""
    if let dic = data as? [String:Any], 
       let loginDic = dic["UserLoginResult"] as? [String:Any],
       let userID = loginDic["UserID"] as? Int {
          userId = "\(userID)"
    }
Run Code Online (Sandbox Code Playgroud)

对于第二个错误,您需要包装可选项

for i in 0..<(userArray?.count ?? 0) {
Run Code Online (Sandbox Code Playgroud)

或者您可以像这样解开userArray.

if let array = userArray {
    for i in 0..<array { 
        //access array here
    }
}
Run Code Online (Sandbox Code Playgroud)