Swift对数组和字典的定义和使用语法,体现了现代语言的特色。熟悉后会感觉更加简练和易用。
1)数组
定义和声明
var a = Array<String>()
// 等同于
var a = [String]()
let animals = ["Giraffe", "Cow", "Doggie"]
animals.append("Ostrich") // 不会编译,因为animals 是 let
let animal = animals[4] // Crash 数组越界
for animals in animals {
print("\(animal)")
}
对于数组的巧妙操作
let bign = [2,3, 5, 8].filter({$0 > 2})
print(bign) // [3, 5, 8], 过滤
let str2: [String] = [12, 39, 30].map { String($0) }
print(str2) // ["12","39", "30"] 转换类型
let sum: Int = [2,3,4].reduce(0) { $0 + $1}
print (sum) // 9 将数组转成一个单独 整形值
2)字典
定义
var pac = Dictionary<String, Int>()
// 等同于
var pac = [String:Int]()
pac = ["Stanford": 1, "Cal": 10]
let ranking = pac["Ohio State"] // ranking 会是一个整型值吗?不,将会是nil
// enum 枚举输出
for (ken, value) in pac {
print("\(key) = \(value)")
}