Swift2 当我 运行 在设备上时,下标的使用不明确
Swift2 Ambiguous use of subscript when i run it on device
当我在设备上 运行 我的应用程序时,我的 swift 代码出现问题。当我在模拟器上 运行 它时一切都很好,但是当我在我的设备上 运行 它时我得到两个错误。
最后两行有两个错误,两行都显示 "ambiguous use of subscript"。
我 运行 宁宁最新的 xcode 如果有任何帮助...
let requestURL: NSURL = NSURL(string: "The webpage im getting info from")!
let urlRequest: NSMutableURLRequest = NSMutableURLRequest(URL: requestURL)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(urlRequest) {
(data, response, error) -> Void in
let httpResponse = response as! NSHTTPURLResponse // method that access information
let statusCode = httpResponse.statusCode
if (statusCode == 200) {
do{
let json = try NSJSONSerialization.JSONObjectWithData(data!, options:.AllowFragments)
// naming the two variables from json
if let counter = json["counts"] {
// It gets an error on both the peopleIn and peopleOut
let peopleIn = counter! [0]
let peopleOut = counter! [1]
json["counts"]
returns AnyObject
,编译器不知道它应该是一个数组。
至少将对象转换为预期类型
if let counter = json["counts"] as? [AnyObject] {
如果预期类型比 [AnyObject]
更具体,则将其转换为该类型。
如果if let
成功关联变量是非可选的,则不需要感叹号。
let peopleIn = counter[0]
当我在设备上 运行 我的应用程序时,我的 swift 代码出现问题。当我在模拟器上 运行 它时一切都很好,但是当我在我的设备上 运行 它时我得到两个错误。
最后两行有两个错误,两行都显示 "ambiguous use of subscript"。
我 运行 宁宁最新的 xcode 如果有任何帮助...
let requestURL: NSURL = NSURL(string: "The webpage im getting info from")!
let urlRequest: NSMutableURLRequest = NSMutableURLRequest(URL: requestURL)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(urlRequest) {
(data, response, error) -> Void in
let httpResponse = response as! NSHTTPURLResponse // method that access information
let statusCode = httpResponse.statusCode
if (statusCode == 200) {
do{
let json = try NSJSONSerialization.JSONObjectWithData(data!, options:.AllowFragments)
// naming the two variables from json
if let counter = json["counts"] {
// It gets an error on both the peopleIn and peopleOut
let peopleIn = counter! [0]
let peopleOut = counter! [1]
json["counts"]
returns AnyObject
,编译器不知道它应该是一个数组。
至少将对象转换为预期类型
if let counter = json["counts"] as? [AnyObject] {
如果预期类型比 [AnyObject]
更具体,则将其转换为该类型。
如果if let
成功关联变量是非可选的,则不需要感叹号。
let peopleIn = counter[0]