根据 swift 文档 - “数组在有序列表中存储相同类型的值。”
摘自:Apple Inc.“The Swift Programming Language”。电子书。 https://itun.es/in/jEUH0.l
var justBlankArray = []
var a:Int = 4
var b:Dictionary = ["Address":"Silver Oaks"]
justBlankArray = ["Tush",a,b]
println(justBlankArray[0].classForCoder)
println(justBlankArray[1].classForCoder)
println(justBlankArray[2].classForCoder)
输出-
NSString
NSNumber
NSDictionary
谁能告诉我这是怎么回事?它们在数组中不是不同类型吗?
最佳答案
创建的justBlankArray
是NSArray
类型的,不是Swift类型的Array
。如果你想在 Swift 类型的 Array
中存储任何类型的对象,你可以这样做:
var justBlankArray : [AnyObject] = []
它创建一个可以容纳任何类型对象的数组。即使是 C 结构,NSArray
也做不到。
关于ios - 数组支持任何类型的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32007051/