我的课上有一个变量
var list = []@H_404_4@我使用它对我的类的一个功能:
func chargeData (data: NSArray){ list = data }@H_404_4@它在我的Swift 2.3项目中运行良好,但是当我将其更新到XCode8和Swift3时,它给了我以下错误:
@H_404_4@Empty collection literal requires an explicit type@H_404_4@所以我已经添加了一个类型转换到我的列表变量:
var list = [] as! NSArray@H_404_4@但它给了我以下警报:
@H_404_4@Forced cast of ‘NSArray’ to same type has no effect@H_404_4@我知道一个警报没有打破应用程序,但我想以正确的方式解决这个错误. @H_404_4@有人有相同的错误并正确解决吗? @H_404_4@提前致谢!
解决方法
出现此错误,因为隐式转换被取消,因此您必须告诉编译器显式类型(ArrayLiteral []):
var list: NSArray = [] // or var list = [] as NSArray