NSMutableArray强制转换为自定义类型的swift数组

时间:2014-12-04 23:21:46

标签: ios objective-c arrays swift

我想弄清楚如何指定或将NSMutableArray转换为自定义类型的swift数组。我目前有2个文件:

  1. 第一个文件需要一个NSMutableArray来实现其功能(通过引用传递,能够删除具有我不知道的索引的特定对象)
  2. 第二个文件使用Swift数组(更好的内存/一次性数组),使用自定义类型,我声明使用
  3. let newArray: [CustomType]!

    我需要将NSMutableArray作为参数传递给第二个文件中的函数,这需要[CustomType]。简单地调用它时:

    let newVC = UIViewController(array: mutableArray)

    它一直告诉我'CustomType' is not identical to 'AnyObject'。我尝试使用mutableArray as [CustomType]调用该函数,但这也无效。如何让swift Array函数接受我的NSMutableArray?

2 个答案:

答案 0 :(得分:3)

这对我有用:

var swiftArray = NSArray(array:mutableArray) as Array<CustomType>

然后

swiftArray是CustomType的Swift数组对象。您可以传递数组并按预期迭代它。

答案 1 :(得分:1)

我需要的是:

让newVC = UIViewController(array:mutableArray as AnyObject as [CustomType])