使用 Python對接快遞單號識別查詢api接口查詢物流信息
921
2025-03-31
在我早年剛做iOS開發時,經常重復寫一些與Swift內置函數相同的函數。今天這篇文章,給大家分享一些技巧使代碼更清晰簡潔。
Reduce() 函數
我們有時會需要計算數組的總和或者乘積,這種情況你可能第一反應是用for循環,如:
let numbers = [2, 3, 5] var result = 0 for num in numbers { result += num } print(result) // Prints 10
就性能而言,這樣寫沒有任何問題。但是 reduce 函數()可以讓代碼更簡單一些:
let numbers = [2, 3, 5] let result = numbers.reduce(0, +) // 這等效于以下內容: // let result = 0 + 2 + 3 + 5,其中0是你輸入的初始值 print(result) // Prints 10
類似地,我們可以用一行代碼計算數組的乘積:
let numbers = [2, 3, 5] let result = numbers.reduce(1, *) // 這等效于以下內容: // let result = 1 * 2 * 3 * 5,其中1是你輸入的初始值 print(result) // Prints 30
Swift 為 Array 提供了一些內置函數。用 for 循環時,不如考慮是否有一個內置函數可以替代。如果你不確定,一定要看看 Apple Swift 的文檔。下面是兩個使用 Swift 內置函數來簡化代碼的例子:
// 過濾數組項 struct Person { var firstName: String var lastName: String } let people = [ Person(firstName: "Bill", lastName: "Gates"), Person(firstName: "Steve", lastName: "Jobs"), Person(firstName: "Elon", lastName: "Musk"), Person(firstName: "Steve", lastName: "Wozniak") ] let results = people.filter { $0.firstName == "Steve"} // 結果包含兩個人,Steve Jobs 和 Steve Wozniak // 下面是另一個例子 // 檢查數組是否包含項 let numbers = [2, 3, 5] if numbers.contains(5) { print("the array contains number 5") else { print("the array does NOT contain number 5") }
三元運算符? :
三元運算符在編程語言中很常見,是個很方便的操作符,尤其是當你需要根據條件為變量賦值時。當然也不要過度使用它,正確地使用它可以簡化代碼并提高代碼的可讀性。
let isMarried = true // 使用 if-else 語句 let prefix: String if isMarried { prefix = "Mrs" else { prefix = "Ms" } // 使用三元運算符 let prefix = isMarried ? "Mrs" : "Ms"
默認值
合并操作符??可以使打開可選值變量更輕松些。
// 不使用合并操作符??的代碼像這樣 let name: String? = nil let greetingName: String if let nameTmp = name { greetingName = nameTmp } else { greetingName = "Customer" } let greeting = "Dear \(greetingName)" // 使用合并操作符??像這樣簡化你的代碼 let name: String? = nil let greetingName = name ?? "Customer" // 如果名稱為零,則返回“客戶”。 // 否則返回 name 的值。 let greeting = "Dear \(greetingName)"
總結
作為開發者,避免重復造輪子是必要的,下面總結一些技巧,能夠幫你更快更清晰的編寫代碼。
Reduce () :當需要組合一個整數列表時使用它。
Filter ((Element)-> Bool)-> [ Element ] :當需要過濾數組中的項時使用它。
Contains (Element)-> Bool :當需要檢查數組中是否存在某個項時使用它。
三元運算符:? :當你需要根據一個條件給一個變量賦值時使用它。
默認值合并操作符?? :當你需要打開一個可選值變量并想設置一個默認值時使用它。
iOS Swift
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。