![](/img/trans.png)
[英]Mutable Swift array becomes NSArray when I initialize with Obj-C
[英]How can I initialize a generic mutable array in Swift?
我试过这个:
var ss: [S] = NSMutableArray<S>(capacity: 0)
编译器说: 不能专门化非泛型类型'NSMutableArray '
为什么?
NSArray
和NSMutableArray
是Objective C类型,不支持泛型。 您可以实例化为swift的本机数组类型:
var settings = [Setting]()
也可以写成
var settings = Array<Setting>()
由于类型推断,您不必指定类型,但如果您愿意,这是完整版本:
var settings: [Setting] = [Setting]()
var settings: Array<Setting> = Array<Setting>()
请注意, [Setting]
和Array<Setting>
是可互换的,这意味着它们定义了相同的对象类型,因此您可以使用任何您喜欢的对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.