本文章纯粹是中文版《The Swift Programming Language》的学习笔记,因此绝大部分的内容都是文中有的。本文是本人的学习笔记,不是正式系统的记录。仅供参考html
如下仍是有不少没看懂、不肯定的地方,我会以“存疑”的注解指出。编程
在此感谢中文版翻译者,这极大地加快了 Swift 的学习速度。swift
本文地址:http://www.javashuo.com/article/p-onthnjzw-hc.htmlsegmentfault
原版:The Swift Programming Language
中文版:Swift 3 编程语言 - 集合类型数组
集合类型涉及三种类,分别是 Array, Set, Dictionary
,分别对应 NSArray, NSSet, NSDictionary
,也就是数组、集合、关联数组。app
var someInts = [Int]() var anEmptyArray = [] var arrayRepeated = Arrar(Repeating: 2.5, count 3) // 建立一个 Float 类型数组,值重复三次 var shoppingList : [String] = ["eggs", "milk"] var shoppingList = ["eggs", "milk"]
能够用加号链接两个数组,得到一个新数组。编程语言
isEmpty() append(_:) += count() someArray[4....6] // 取子数组 removeLast() // 同时会返回被删除的对象 insert(_: at:)
这里要用到 enumated
方法:学习
for (index, value) in anArray.enumated() { print ("Item \(index + 1): \(value)") }
var aSet = Set<Characters>() // 建立 Characters 类型的 Set var aSet:Set = ["S", "w", "i", "f", "t"] // 注意必须指定是 Set 类型,不然 Swift 会默认为 Array 类型
count() isEmpty() insert(_:) remove(_:) removeAll() contains(_:) isSubset(of:) isSuperset(of:) isDisjoint(of:) // 判断二者是否有交集
for value in aSet { ... }
a.intersects(b)
a.excludeOr(b)
a.union(b)
a.substract(b)
var aDict = [Int : String]() var aDict = [:] var aDict = ["one": 1, "two": 2] // 以 “key-value” 对建立 Dictionary
count() isEmpty() updateValue(_:forKey:) // 同时返回被替代掉的对象 aDict["SomeKey"]
另外,赋值 nil
能够删除指定的键值对ui
for (theKey, theValue) in aDict { ... }