一点学习体会...

32 阅读1分钟

我看老师写的代码,有时候我就不理解,为什么他要这样写?为什么不能那样写?明明都是等价的,为什么他偏要那样写呢?

比如下面这段:

typealias 水果 = (name:String, price: Double)

let fruits: [水果] = [("苹果", 40), ("香蕉", 10), ("奇异果", 15), ("水梨", 69), ("葡萄", 99)]

这段完全等价于

typealias [水果] = [(name:String, price: Double)]

let fruits:  水果 = [("苹果", 40), ("香蕉", 10), ("奇异果", 15), ("水梨", 69), ("葡萄", 99)]

为什么要选择上面的那段?

为了存储水果价格,先声明了一个元组类型,名称叫水果。

然后声明了fruits这个常量,指定类型水果类型的数组(水果类型为元组),然后初始化具有5个元组的数组。

为什么上面的水果没有[],而下面的水果有[]

把上面的水果用上[],下面的水果不用[],程序也能运行啊!

我当时很不理解。为什么老师就在下面加[],不再上面加[]呢?