2016-01-04 57 views
-1

升级到xcode/swift的新版本后,我得到了很多'模糊使用下标'的错误。Swift 2使用'下标'错误模糊

有问题的代码在下面,线条引起错误标记为注释。有任何想法吗?

var exch: (AnyObject) = self.form.formValues().valueForKey(Static.exchange)! 

    if (exch.count != nil) { 

     if (exch.count==1) { 
      ex = exch[0] as! Int // error 

     } else if (exch.count==2) { 
      var i1 = exch[0] as! Int //error 
      var i2 = exch[1] as! Int //error 
      var total = i1 + i2 
      ex = total 

     } else if (exch.count==3) { 
      var i1 = exch[0] as! Int //error 
      var i2 = exch[1] as! Int //error 
      var i3 = exch[2] as! Int //error 
      var total = i1 + i2 + i3 
      ex = total 

     } else { 
      ex = 99 

     } 

    } 
+0

数组是'exch'应该是一个'NSArray'?如果是这样,你需要先将它转换为数组。在你的代码中,'exch'的类型是'AnyObject',所以编译器不能说出它是什么类型,因此应该使用哪些下标函数。 –

回答

1

exch是什么类型?如果是AnyObject变化

var exch: (AnyObject) 

var exch: [AnyObject] 
+0

谢谢你的工作! – user2647092

+0

@ user2647092很高兴听到这个消息。请不要忘记接受答案,如果它是有用的:) – Avt

+0

非常感谢,以节省我的时间。 –