[Swift通天遁地]五、高階擴充套件-(2)擴充套件集合型別
阿新 • • 發佈:2019-01-07
本文將演示擴充套件集合型別實現對集合中資料的多種運算。
首先確保在專案中已經安裝了所需的第三方庫。
點選【Podfile】,檢視安裝配置檔案。
根據配置檔案中的相關配置,安裝第三方庫。
1 platform :ios, '12.0' 2 use_frameworks! 3 4 target 'DemoApp' do 5 source 'https://github.com/CocoaPods/Specs.git' 6 pod "Arithmosophi" 7 end
然後點選開啟【DemoApp.xcworkspace】專案檔案。
在專案導航區,開啟檢視控制器的程式碼檔案【ViewController.swift】
現在開始編寫程式碼,快速檢測裝置的各種屬性。
1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib. 8 9 //陣列求和 10 print("sum:\([1, 2, 3, 4].sum)") 11 //陣列求積 12 print("product:\([1, 2, 3, 4].product)") 13 //字串組成的陣列,進行求和運算, 14 //返回拼合而成的字串 15 print("sum:\(["a","b","c","d"].sum)") 16 //字串陣列組成的陣列,進行求和運算, 17 //返回拼合而成的字串陣列 18 print("sum:\([["a","b"],["c"],["d"]].sum)") 19 //求平均值 20 print("average:\([1, 2, 3, 4].average)") 21 22 print("---------------------") 23 //中間值 24 print("median:\([1, 11, 19, 4, -7].median)") 25 //有兩個中間值時,取較小的一個 26 print("medianLow:\([1.0, 11, 19.5, 4, 12, -7].medianLow)") 27 //有兩個中間值時,取較大的一個 28 print("medianHigh:\([1, 11, 19, 4, 12, -7].medianHigh)") 29 //取樣本方差 30 print("varianceSample:\([1.0, 11, 19.5, 4, 12, -7].varianceSample)") 31 //取總體方差 32 print("variancePopulation:\([1.0, 11, 19.5, 4, 12, -7].variancePopulation)") 33 //標準樣本偏差 34 print("standardDeviationSample:\([1.0, 11, 19.5, 4, 12, -7].standardDeviationSample)") 35 //標準總體偏差 36 print("standardDeviationPopulation:\([1.0, 11, 19.5, 4, 12, -7].standardDeviationPopulation)") 37 38 print("---------------------") 39 //傾斜度 40 print("skewness:\([1.0, 11, 19.5, 4, 12, -7].skewness)") 41 //峰度 42 print("kurtosis:\([1.0, 11, 19.5, 4, 12, -7].kurtosis)") 43 //樣本協方差 44 print("covarianceSample:\([1, 2, 3.5, 3.7, 8, 12].covarianceSample([0.5, 1, 2.1, 3.4, 3.4, 4]))") 45 //總體協方差 46 print("covariancePopulation:\([1, 2, 3.5, 3.7, 8, 12].covariancePopulation([0.5, 1, 2.1, 3.4, 3.4, 4]))") 47 //皮爾遜積差相關係數 48 print("pearson:\([1, 2, 3.5, 3.7, 8, 12].pearson([0.5, 1, 2.1, 3.4, 3.4, 4]))") 49 } 50 51 override func didReceiveMemoryWarning() { 52 super.didReceiveMemoryWarning() 53 // Dispose of any resources that can be recreated. 54 } 55 }