创建Constant(let)空Array对象有什么用?

时间:2014-11-15 08:55:56

标签: ios xcode swift

在Apple发布的Swift PDF文件中,我发现了这段代码

要创建空数组或字典,请使用初始化程序语法。

let emptyArray = [String]()
let emptyDictionary = [String: Float]()

这里有什么用于创建一个带有空数组的let(常量)对象,我们不能在下一行中插入任何值?!!

3 个答案:

答案 0 :(得分:2)

在教学目标时,他们开始像

那样开始教学
NSArray *arrayObj = [[NSArray alloc] init] 

如果我们这样声明,我们就无法在初始化后添加对象 同样,他们教我们如何初始化数组或字典对象

另一个区别是,如果我们分配一个空数组,那么我们可以用这个分配另一个数组。

我们也不允许你为它分配另一个数组

let emptyArray = [String]()
let/var filledArray = ["stack", "overflow"]

emptyArray = filledArray  //  will give you an error 

答案 1 :(得分:0)

使用不多,但可以复制该值:

let emptyDictionary = [String: Float]()
var otherDictionary = emptyDictionary
otherDictionary["a"] = 0.5

答案 2 :(得分:0)

属性声明将它们设置为默认值,但您实际上可以将值更改为init中的其他值。这只是类属性的情况,而不是内联属性。

以下是类范围中的示例,其中let属性可以具有默认值但可以更改:

class Whatever {

    let testArray = [Int]()

    init() {
        testArray = [0,1,2]
    }
}