SWIFT學習筆記04

來源:互聯網
上載者:User

標籤:swift   筆記   數組   字典   

1、在實際編譯時間,Swift 編譯器會最佳化字串的使用,使實際的複製只發生在絕對必要的情況下,這意味著您將字串作為值類型的同時可以獲得極高的效能。

2、for character in "Dog!" {    println(character)} // D // o // g // ! 

3、通過標明一個Character類型註解並通過字元字面量進行賦值,可以建立一個獨立的字元常量或變數:
let yenSign: Character = "¥"

4、計算字元數量
let unusualMenagerie = "Koala , Snail , Penguin , Dromedary "println("unusualMenagerie has \(countElements(unusualMenagerie)) characters") // 列印輸出:"unusualMenagerie has 36 characters

5、首碼/尾碼
是否有首碼:scene.hasSuffix("Capulet's mansion")是否有尾碼:scene.hasSuffix("Friar Lawrence's cell")

6、數組操作
根據索引新增元素:shoppingList.insert("Maple Syrup", atIndex: 1)對應刪除:let mapleSyrup = shoppingList.removeAtIndex(1)移除最後一項:let apples = shoppingList.removeLast()

7、利用全域函數enumerate遍曆,可獲得下標
for (index, value) in enumerate(shoppingList) {    println("Item \(index + 1): \(value)")}

8、初始化指定大小數組的方式:
var threeDoubles = Double[](count: 3, repeatedValue:0.0) // threeDoubles 是一種 Double[]數組, 等於 [0.0, 0.0, 0.0]var anotherThreeDoubles = Array(count: 3, repeatedValue: 2.5) // anotherThreeDoubles is inferred as Double[], and equals [2.5, 2.5, 2.5]

9、字典update返回String?
if let oldValue = airports.updateValue("Dublin Internation", forKey: "DUB"){println("The old value for DUB was \(oldValue).====dic\(airports)")}

10、字典元素移除,同removeValueForKey
airports["APL"] = nil // APL現在被移除了

11、字典的鍵轉為數組,不能沒有Array
let airportCodes = Array(airports.keys)

12、在後台,Swift 的數組和字典都是由泛型集合來實現的,想瞭解更多泛型和集合資訊請參見泛型。

13、不可變字典的內容在被首次設定之後不能更改。不可變行對數組來說有一點不同,當然我們不能試著改變任何不可變數組的大小,但是我們·可以重新設定相對現存索引所對應的值。在我們不需要改變數組大小的時候建立不可變數組是很好的習慣。如此 Swift 編譯器可以最佳化我們建立的集合。

2014年07月02日




相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.