Swift - 整數



整數資料型別用於儲存整數,例如 23、-543、0、332 等。它可以儲存正數、負數和零。它不儲存小數,例如 3.43、4.423 等。Swift 將整數分為兩類:

  • 有符號整數 - 有符號整數用於儲存零和正整數。它們以 8 位、16 位、32 位和 64 位的形式提供。它們由 Int 表示,例如 8 位有符號整數型別 Int8。

  • 無符號整數 - 無符號整數用於儲存負整數。它們也以 8 位、16 位、32 位和 64 位的形式提供。它由 Uint 表示,例如 32 位無符號整數型別 UInt32。

Int

Swift 提供了一種名為 Int 的特殊整數型別。使用 Int 型別,我們不需要顯式指定整數的大小。Int 的大小與平臺的大小相同,例如,如果我們有 32 位平臺,則 Int 的大小為 Int32,如果我們有 64 位平臺,則 Int 的大小為 Int64。它可以儲存 -2,147,483,648 到 2,147,483,647 之間的值。

語法

以下是 Int 的語法:

var value : Int

示例

Swift 程式計算兩個整數的和。

import Foundation

// Defining integer data type
let num1 : Int = 232
let num2 : Int = 31

// Store the sum
var sum = 0

// Calculate the sum 
sum = num1 + num2

print("Sum of \(num1) and \(num2) = \(sum)")

輸出

Sum of 232 and 31 = 263

UInt

使用 UInt,我們還可以儲存無符號整數資料型別,而無需顯式指定它們的大小。Uint 的大小也與平臺的大小相同,例如,如果我們有 32 位平臺,則大小為 UInt32,而如果我們有 64 位平臺,則大小為 UInt64。

語法

以下是 UInt 的語法:

var num : Uint = 32

示例

Swift 程式新增兩個無符號整數。

import Foundation

// Defining Unsigned integer data type
let num1 : UInt = 32
let num2 : UInt = 22

// Store the sum
var sum : UInt

// Calculate the sum 
sum = num1 + num2
print("Sum of \(num1) and \(num2) = \(sum)")

輸出

Sum of 32 and 22 = 54

整數邊界

整數資料型別的最小和最大大小如下:

型別 大小 範圍
Int8 1 位元組 -128 到 127
Int16 2 位元組 -32768 到 32767
Int32 4 位元組 -2147483648 到 2147483647
Int64 8 位元組 -9223372036854775808 到 9223372036854775807
UInt8 1 位元組 0 到 255
UInt16 2 位元組 0 到 65535
UInt32 4 位元組 0 到 4294967295
UInt64 8 位元組 0 到 18446744073709551615

整數的最小值和最大值

我們可以藉助 Swift 預定義的屬性minmax 來顯式計算整數的大小。

min 屬性用於計算整數的最小大小,而 max 屬性用於計算整數的最大大小。

示例

Swift 程式計算 Int8 和 UInt16 的最小大小。

import Foundation

// Minimum size of Int8 and UInt16
let result1 = Int8.min
let result2 = UInt16.min

print("Minimum Size of Int8 is \(result1)")
print("Minimum Size of UInt16 is \(result2)")

輸出

Minimum Size of Int8 is -128
Minimum Size of UInt16 is 0

示例

Swift 程式計算 Int16 和 UInt64 的最大大小。

import Foundation

// Maximum size of Int16 and UInt64
let result1 = Int16.max
let result2 = UInt64.max

print("Maximum Size of Int16 is \(result1)")
print("Maximum Size of UInt64 is \(result2)")

輸出

Maximum Size of Int16 is 32767
Maximum Size of UInt64 is 18446744073709551615
廣告