內建有號整數型別:Int8
、Int16
、Int32
、Int64
。
內建無號整數型別:UInt8
、UInt16
、UInt32
、UInt64
。
Int
等同Int64
,UInt
等同UInt64
。表達數值可以使用底線_
提升可讀性。
var num = 123_456_789 //return: 123456789
內建定義整數最大、最小值。
var uiMin = UInt.min //return: 0
var uiMax = UInt.max //return: 18446744073709551615
var iMin = Int.min //return: -9223372036854775808
var iMax = Int.max //return: 9223372036854775807
浮點數使用Double
(64-bit)、Float
(32-bit)表達。
var pi = 3.14159265359
布林值(Bool
)只有兩個值true
或false
,不可用數字0
或1
表示。
var dream = true
字串(String
)使用兩個引號"
包含要描述的字元組。
var message = "hello world"
Swift 是一種很聰明的語言。通常能從=
左邊推測右邊的變數或常數的型別,當然使用者也可以自行宣告。以下整數、浮點數、布林數、字串宣告方式顯式與隱式意義相同。
var i1 = 123
var i2: Int = 123
var d1 = 3.14
var d2: Double = 3.14
var b1 = true
var b2: Bool = true
var s1 = "hello"
var s2: String = "hello"
Swift 也是一種非常龜毛嚴謹的語言。
var num //error: type annotation missing in pattern
num = 1
var num1 = 100
var num2: Int
num1 = num2 //error: variable 'num2' used before being initialized
var max = UInt8.max
max = max + 1 //Execution was interrupted, reason: EXC_BAD_INSTRUCTION
var str = "hello"
str = 123 //error: cannot assign a value of type 'Int' to a value of type 'String'
var v1 = 123 //type: Int
var v2 = String(v1) //type: String