Swift Standard Library Functions
-
indexOf(element) (替代find)
返回序列sequence中某元素element的位置index。如果序列中不存在此元素,则返回nil。let sequence = [2, 4, 6, 8, 10] sequence.indexOf(8) // 3 sequence.indexOf(0) // nil
-
filter(includeElementClosure)
对序列sequence中每个元素都执行includeElementClosure闭包,并将所有闭包结果为true的元素合成一个新序列sequence并返回。for i in (1...10).filter({ $0 % 2 == 0 }) { print(i) // 2, 4, 6, 8, 10 }
-
map(transformClosure)
对序列sequence中每个元素都执行transformClosure闭包,并将所有闭包的结果合成一个新序列sequence并返回。for i in (1...10).map({ $0 * 10 }) { print(i) // 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 }
-
flatMap
作用和map类似,但是它舍弃了那些值为nil的元素。 -
enumerate()
对于每一个元素都会返回一个包含元素的索引和值的元组(tuple)for (index, value) in "Swift".characters.enumerate() { print("Item\(index): \(value)") // Item0: S // Item1: w // Item2: i // Item3: f // Item4: t }