//初始數(shù)組
letxidaArray = [10,20,30,40]
//map用于將每個數(shù)組元素通過某個方法進行轉(zhuǎn)換。
//func map (transform: (T) -> U) -> U[]這個方法以一個命名函數(shù)transform作為參數(shù)瀑踢,transform負責把元素類型T轉(zhuǎn)成類型U并返回一個類型U的數(shù)組扳还。
//如下函數(shù)將原始數(shù)組Int類型變?yōu)镾tring并且在每個數(shù)字后面添加了后綴:xidaMM
//[10,20,30,40] - > ["10:xidaMM","20:xidaMM","30:xidaMM","40:xidaMM"]
letarrMap1 =xidaArray.map({"\($0):xidaMM"})
letarrMap2 =xidaArray.map{ (a:Int) ->Stringin
return"\(a):xidaMM"
}
//filter用于選擇數(shù)組元素中滿足某種條件的元素
//filter(includeElement: (T) -> Bool) -> T[]以返回true或false的函數(shù)includeElement作為參數(shù),對原數(shù)組元素調(diào)用includeElement時丘损,只有返回true的元素會通過篩選
//將數(shù)組中大于10的元素篩選出來
//[10,20,30,40] - > [20,30,40]
letarrFilter1 =xidaArray.filter({$0>10})
letarrFilter2 =xidaArray.filter{ (a:Int) ->Boolin
returna>10
}
//reduce方法把數(shù)組元素組合計算為一個值普办。
//reduce(initial: U, combine: (U, T) -> U) -> U接收兩個參數(shù),一個為類型U的初始值徘钥,另一個為把類型為U的元素和類型為T的元素組合成一個類型為U的值的函數(shù)衔蹲。最終結(jié)果整個數(shù)組就變成了一個類型為U的值。
//數(shù)組中的數(shù)字都加起來的和:
letsum1 =xidaArray.reduce(0,combine: {$0 + $1})
letsum2 =xidaArray.reduce(0,combine: +)
//數(shù)組中去掉最后一個對象的和:
letfinalArr =xidaArray.dropLast().reduce(0, combine: +)