- // 取绝对值
- abs(-10)
-
- var languages = ["Swift","Objective-C"]
-
- // 判断序列中是否包含指定的字符串
- contains(languages,"Swift")
-
- // 去除序列中的第一个元素
- var oldLanguages = dropFirst(languages)
- equal(oldLanguages,["Objective-C"])
-
- // 去除序列中的最后一个元素
- var firstLanguages = dropLast(languages)
- equal(firstLanguages,["Swift"])
-
- // 对指定的序列中的元素进行闭包中的操作,然后返回新的序列
- let intArr = [1,2,3,4,5,6,7,8,9,0]
- let filterArr = filter(intArr,{
- $0 % 2 == 0
- })
-
- // 返回序列中指定元素的位置
- find(languages,"Objective-C") == 1
- find(languages,"Java") == nil
- find([29,85,42],42) == 2
-
-
- // indices(sequence):返回sequence中所有元素的位置
- equal(indices([29,42]),[0,1,2])
- for i in indices([29,42]) {
- println(i)
- }
-
- // join(separator,sequence):将序列sequence通过分隔符separator连成一个字符串
- join(":",["A","B","C"])
-
- // map(sequence,transformClosure):对序列sequence中的每个元素都执行includeElementClosure闭包,并将所有闭包的结果合成一个新序列sequence并返回。
- equal(map(1...3,{
- $0*5
- }),[5,10,15])
-
-
- // max(comparable1,comparable2,etc.)返回参数中最大的值
- max(8,3) == 8
-
-
- // maxElement(sequence): 返回序列sequence中的最大值
- maxElement([8,3])
-
- // minElement(sequence): 返回序列sequence中的最小值
- minElement([8,3])
-
- // reduce(sequence,initial,combineClosure):给定一个序列sequence和initial初始值,然后将initial和序列中的第一个元素作为参数传入到combineClosure中进行计算,得到的结构保存到initial中;然后再将initial和第二个元素传入到combineClosure中进行计算,etc.
- reduce(languages,"") {
- $0+$1
- }
-
- reduce([10,20,5],1) {
- $0*$1
- }
-
- // reverse(sequence):返回逆序的序列sequence
- reverse([1,3])
-
-
- // startsWith(sequence1,sequence2): 如果sequence1中开头的元素和sequence2中的所有元素都相等,则返回true
- startsWith([1,3],[1,5])
-
- //断言,参数如果为`true`则继续,否则抛出异常
- // assert mentioned on page 55
- assert(true)
-
-
- //计算序列的元素个数
-
- // countElements mentioned on page 79
- count("foo") == 3
-
- //返回一个新的序列,其中每个元素是一个元组,第一个值为原来元素所在的位置`index`,第二个为原来序列中的元素
- // enumerate mentioned on page 94
-
- for (i,j) in enumerate(["A","B"]) {
-
- // "0:A","1:B" will be printed
- println("\(i):\(j)")
- }