Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/116.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 浇铸混凝土类型有哪些?_Ios_Swift - Fatal编程技术网

Ios 浇铸混凝土类型有哪些?

Ios 浇铸混凝土类型有哪些?,ios,swift,Ios,Swift,我有一个用例,我想将特定类型的对象数组分配给[Any]类型的变量。考虑到这些参考资料: var genericArray : [Any] let specificArray : [MyClass] 这会引发编译器错误: genericArray = specificArray //Cannot assign value of type '[MyClass]' to value of type '[Any]' 这也是: genericArray = specificArray as [An

我有一个用例,我想将特定类型的对象数组分配给
[Any]
类型的变量。考虑到这些参考资料:

var genericArray : [Any]
let specificArray : [MyClass]
这会引发编译器错误:

genericArray = specificArray  
//Cannot assign value of type '[MyClass]' to value of type '[Any]'
这也是:

genericArray = specificArray as [Any]
//'Any' is not a subtype of 'MyClass'
这项工作:

genericArray = specificArray.map { $0 }

但它似乎不够优雅。是否有更好的方法来处理此赋值?

如果您的genericArray仅包含类类型的实例(不包括函数类型),则只需使用
var genericArray:[AnyObject]
。这将起作用,因为specificArray类型被设置为MyClass,我想这是类