【发布时间】:2014-12-09 09:32:41
【问题描述】:
我开始学习 Swift,但遇到了 Swift 的 Array 类的奇怪行为,没有记录,或者至少我在任何地方都没有找到它。
当我像这样创建Array 时:
var myRegularArray: Array = [Int]()
或者像这样:
var myRegularArray: Array = [1, 2, 3]
然后一切都按照书本进行:数组是通过常规语法创建的,并且是已定义的类型等。
但是
当我输入这样的内容时:
var myStrangeArray = ["Some text", 42]
编译器将此视为NSObject 实例,而不是Array 甚至NSArray。如果我使用这种语法会发生什么,为什么不是Array 实例?
【问题讨论】:
-
不是
NSObject而是[NSObject]是Array<NSObject>。 -
同意 rintaro。
-
啊,所以如果我创建像
Array<NSObject>这样的数组,Apple 关于强类型数组的评论毫无意义? -
@rintaro,请您写一个答案,以便我选择它作为答案吗?
标签: ios cocoa cocoa-touch swift