Swift 基本資料型別 (Basic Data Types)

Swift 提供了所有 C 和 Objective-C 的基本資料型別,包括整數、浮點數、布林值等。

整數 (Integers)

整數就是沒有小數部分的數字。

  • Int:在 32 位元平台上是 32 位元長,在 64 位元平台上是 64 位元長。這通常是你最常使用的整數型別。
  • UInt:無號整數 (Unsigned Integer),同樣依平台而定。

除非你需要特定長度的整數 (如 Int8, UInt16),否則在 Swift 中一律推薦使用 Int。這能確保程式碼的可攜性與相容性,即使是在處理非負數時也是如此。

let meaningOfLife: Int = 42
let minValue = Int.min  // 查看 Int 能儲存的最小值
let maxValue = Int.max  // 查看 Int 能儲存的最大值

浮點數 (Floating-Point Numbers)

浮點數是有小數部分的數字。

  • Double:64 位元浮點數。當你需要很高精確度時使用 (推薦預設使用)。
  • Float:32 位元浮點數。當精確度要求不高時使用。
let pi = 3.14159 // 預設推斷為 Double
let anotherPi: Double = 3.14159
let someFloat: Float = 3.14
Double 的精確度至少有 15 位數字,而 Float 只有 6 位。若無特殊需求,請優先使用 Double

布林值 (Booleans)

布林值只有兩種狀態:true (真) 和 false (假)。Swift 的布林型別叫做 Bool

let isSwiftFun = true
let isCoffeeHot = false

布林值常用於條件判斷中:

if isSwiftFun {
    print("Swift is fun!")
}

型別安全與型別轉換

Swift 是一種型別安全 (Type Safe) 的語言。這意味著 Swift 不允許你將不同型別的變數直接混合運算,以防止意外錯誤。

例如,你不能直接把 IntDouble 相加:

let three = 3
let pointOneFourOneFiveNine = 0.14159
// let pi = three + pointOneFourOneFiveNine // 錯誤!Int 不能直接加 Double

你必須顯式地轉換型別:

let pi = Double(three) + pointOneFourOneFiveNine // 正確
// 將 Int 轉換成 Double 後再相加

這種嚴格的限制雖然一開始可能覺得麻煩,但它能幫助你在編譯時期就發現並避免許多潛在的 Bug。