1.1.關於swift

· Swift 是一種適用於 iOS 和 OS X 應用的全新程式語言,它建立在最好的 C 和 Objective-C 語言之上,並且沒有 C 語言的相容性限制。Swift 採用安全的程式設計模式,增加了現代功能使 程式設計更容易、更靈活、更有趣。Swift 以成熟且備受寵愛的 Cocoa 和 Cocoa Touch 框架為 支撐,這是一個重新構想軟體開發的機會。

· 支援Playground,它允許程式實時預覽,無需頻繁建立和執行APP

· 簡潔,  安全, 容易, 靈活, 高效

1.2.swift初見

通常來說,程式語言教程中的第一個程式應該在螢幕上列印“Hello, world”。在 Swift 中,可 以用一行程式碼實現:

  1.  println("hello,world")

注意:為了獲得最好的體驗,在 Xcode 當中使用程式碼預覽功能。程式碼預覽功能可以讓你編輯程式碼並實時看到執行結果。

· 單行註釋

  //  單行註釋

· 多行註釋

  /*

    // 單行註釋

    /* 多行註釋,需要注意的是,多行註釋可以巢狀,這點和其他語言不一樣,很實用的一個功能 */

  */ 

· 分號

  · 單個語句後面無需加分號,加了也行

  · 多個語句放在一行,需要加分號

1.3.變數與常量

· 變數

  · 使用var宣告變數(值可以根據需要不斷修改的量稱為變數)

· 常量

  · 使用let宣告變數(值不能夠被二次修改的量稱為常量)

· 型別推導

  · 編譯器在編譯的時候,通過提供的初始化值,自動推匯出 特定的表示式的型別

· 注意

  · 變數多次賦值的時候需要保證值的型別是相同的

  · 顯示宣告型別,語法:"變數:型別"

  · swift不會自動給變數賦初始化值,也就是說變數不會有預設值,所以要求在使用變數之前必須要對其初始化

  · swift不支援隱士型別轉換,需要顯示型別

  · 使用typealias關鍵字定義類型別名,類似typedef

  · 字串格式化,使用 \(item)

1.4.命名規則

  · swift中可以使用幾乎任何字元來常量和變數名,包括Unicode。但是不能含有數字符號,箭頭,無效的Unicode,橫線—,製表符,

且不能以數字開頭

1.5.整型表現形式

  · 二進位制數,字首為 0b

  · 八進位制數,字首為 0o

  · 十六進位制數,字首為 0x

2.1.陣列與字典

  · 使用 [ ] 操作符宣告陣列

  · 使用 [ key : value ]操作符宣告字典

2.1.1.陣列的用法

2.1.2.陣列的增加、修改與刪除元素的值用法

2.1.3.陣列的遍歷

2.1.4.宣告陣列的方法

2.1.5.字典的宣告與輸出

2.1.6.字典的新增、修改、刪除方法

2.1.7.輸出字典的個數count

2.1.8.字典的遍歷方法

3.1.元祖

  元組(tuples)把多個值組合成一個複合值。元組內的值可以使任意型別,並不要求是相 同類型。

例子: 1. let http404Error = (404, "Not Found")

    2. // http404Error 的型別是 (Int, String),值是 (404, "Not Found")

你可以把任意順序的型別組合成一個元組,這個元組可以包含所有型別。只要你想,你可 以建立一個型別為(Int, Int, Int)或者(String, Bool)

或者其他任何你想要的組合的元組。

你可以將一個元組的內容分解(decompose)成單獨的常量和變數,然後你就可以正常使 用它們了:

  1. let (statusCode, statusMessage) = http404Error

  2. println("The status code is \(statusCode)")

  3. // 輸出 "The status code is 404"

  4. println("The status message is \(statusMessage)")

  5. // 輸出 "The status message is Not Found"

如果你只需要一部分元組值,分解的時候可以把要忽略的部分用下劃線(_)標記:

  1. let (justTheStatusCode, _) = http404Error

  2. println("The status code is \(justTheStatusCode)")

  3. // 輸出 "The status code is 404"

此外,你還可以通過下標來訪問元組中的單個元素,下標從零開始:

  1. println("The status code is \(http404Error.0)")
  2. // 輸出 "The status code is 404"

  3. println("The status message is \(http404Error.1)")
  4. // 輸出 "The status message is Not Found" 
 
你可以在定義元組的時候給單個元素命名:

let http200Status = (statusCode: 200, description: )

給元組中的元素命名後,你可以通過名字來獲取這些元素的值:

  1. println("The status code is \(http200Status.statusCode)")

  2. // 輸出 "The status code is 200"

  3. println("The status message is \(http200Status.description)")
  4. // 輸出 "The status message is OK"

注意:元組在臨時組織值的時候很有用,但是並不適合建立複雜的資料結構。如果你的數 據結構並不是臨時使用,

  請使用類或者結構體而不是元組。請參考類和結構體。

4.1. 可選型別

4.1.1.nil的詳解

4.1.2.總結 ?的使用場景

  · 宣告Optional變數

  · 用在Optional值操作中,用來判斷是否響應後面的操作

5.1.解包

5.1.1隱式解包的可選型別

隱式解包的可選型別例子:

6.1.Swift基本運算子

6.1.1.賦值運算子

6.1.2.數學運算子

6.1.3.比較運算子

6.1.4.三目運算子

6.1.5.範圍運算子

6.1.6.邏輯運算子

7.1.字元與字串

7.1.1.初始化空的字串

7.1.2.變長字串

7.1.3.字元計數

7.1.4.組合字串與字元

7.1.5.字串格式化

7.1.6.字串比較

7.1.7.字串大小寫

7.1.8.字串編碼

8.1.流程控制

9.1.條件語句

9.1.2.區間範圍匹配(Range Matching)

10.1.函式與閉包

主要內容: ·函式的定義與呼叫 ·函式引數與返回值 ·函式引數名稱 ·函式型別

    ·函式巢狀 ·閉包表示式 ·尾隨閉包 ·值捕獲

10.1.2.函式

C語言函式指標的寫法

OC語言的Block寫法

·注意:swift語言呼叫C函式、OC函式時需引入下面的檔案

10.1.3.閉包

閉包的總結

哈哈



0.001291036605835