Swift 中的 SharedPreferance —— UserDefaults

從 Android 開發又最終回到 iOS 了,好多東西都不知道。最近一直有需求要用一個類似 Android 的 SharedPreferance 的東西。找了一下資料,來總結一下。

它是什麼

不會吧?不會還有人不知道 SharedPreferance 吧???

SharedPreferance 是一種輕量級的 Android 儲存API, 用於儲存簡單的資料,資料多了就不如其他方式高效了。

iOS 中,起同樣作用的東西,叫 UserDefaults

這兩者都以 key-value 的形式儲存。

使用場景

簡單資料

簡單資料

簡單資料

複雜資料建議使用 SQLite 或者 Core Data,不建議作死。。。

Quick Start

直接上程式碼,裡面註釋我都寫好了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
let defaults = UserDefaults.standard // 獲取全域性的 UserDefaults

defaults.set(Int.max, forKey: "int") // 儲存
defaults.integer(forKey: "int") // 讀取

defaults.set(true, forKey: "bool")
defaults.bool(forKey: "bool")

defaults.set(Double.infinity, forKey: "double")
defaults.double(forKey: "double")

defaults.set(Float.infinity, forKey: "float")
defaults.float(forKey: "float")

預設值

Float, Int, Double 的預設值都是 0;Bool 的預設值是 false。

更多

大家可以多在 Playgrounds 裡面試試,還可以看看 Apple Developer Documentation