API更改
1. ?字符串 (String)
1.1 ? 本次更改消除了在String對象的String數組上迭代的問題,可以直接對String對象進行迭代
String迭代比較圖
1.2 ? String具有Sequence和Collection的特性
1.3 Swift4添加了subString類型,用于引用String上的子序列
2. ?字典和集合
基于序列的初始化,通過一個zip元組創建一個字典的能力
2.1 字典默認值
先給字典默認值,然后改變value的值
2.2 字典分組
3. 私有訪問修飾符
swift 3含有一個fileprivate關鍵字,但是一些人不太喜歡,swift修改private的使用,使private修飾的變量在擴展extension中可以訪問
4.新增API
1.歸檔和序列化
2. 鍵值編碼
keyPath
Demo
3.多行字符串文字
多行字符串的使用
多行字符串在構建XML/JSON消息過構建長格式的文本在UI中顯示
4.開區間
4.2 模式匹配
4.3 通用下標
5. 更多的更新
MutableCollection中的swapAt
6.NSNumber橋接
let n = NSNumber(value: 999)
let v = n as? UInt8 // Swift 4: nil ? Swift 3: 231