整數(shù)類型#
Swift 提供了8,16割去,32和64位的有符號和無符號整數(shù)類型。
一般使用Int就可以了
浮點型#
浮點型分Double和Float兩種類型
Double:64位浮點數(shù)了袁。精確度15位坦仍。優(yōu)先選擇Double。推斷浮點型時得糜,Swift會選擇Double敬扛。
Float:32位浮點數(shù)。精度度6位朝抖。
布爾類型#
Bool,布爾值只有 true 和 false 兩種啥箭,沒有C和OC中非零即真的概念。
如果在需要使用Bool類型的地方使用了非布爾值治宣,Swift的類型安全機制會報錯
字符串#
String
字符#
Character
Swift字面量#
所謂字面量急侥,就是指像特定的數(shù)字砌滞,字符串或者是布爾值這樣,能夠直接了當?shù)刂赋鲎约旱念愋筒樽兞窟M行賦值的值坏怪。
let aNumber = 3 //整型字面量
let aString = "Hello" //字符串字面量
let aBool = true //布爾值字面量
以下代碼來源于官方文檔
1.整數(shù)字面量
十進制數(shù)贝润,沒有前綴
二進制數(shù),前綴是0b
八進制數(shù)陕悬,前綴是0o
十六進制數(shù)题暖,前綴是0x
let decimalInteger = 17
let binaryInteger = 0b10001 // 二進制17
let octalInteger = 0o21 // 八進制17
let hexadecimalInteger = 0x11 //十六進制17
2.浮點字面量
//十進制的指數(shù)
let exp1 = 1.25e2// 1.25 * 10^2 = 125.0
let exp2 = 1.25e-2// 1.25 * 10^-2 = 0.0125
//十六進制的指數(shù)
let exp3 = 0xFp2// 15 * 2^2 = 60.0
let exp4 = 0xFp-2// 15 * 2^-2 = 3.75
//十進制的12.1875
let decimalDouble = 12.1875
let exponentDouble = 1.21875e1
let hexadecimalDouble = 0xC.3p0
整數(shù)和浮點數(shù)都可以添加額外的零并且包含下劃線,并不會影響字面量:
let paddedDouble = 000123.456 //123.456
let oneMillion = 1_000_000 //1000000
let justOverOneMillion = 1_000_000.000_000_1 1000000.0000001
類型轉(zhuǎn)換#
OC中的類型強轉(zhuǎn):(數(shù)據(jù)類型)變量/常量
Swift中的類型強轉(zhuǎn):數(shù)據(jù)類型(變量/常量)
不同類型的算數(shù)運算捉超,需要轉(zhuǎn)換為形同的類型
let three = 3
let pointOneFourOneFiveNine = 0.14159
let π = Double(three) + pointOneFourOneFiveNine // π 等于 3.14159胧卤,所以被推測為 Double 類型
let πInteger = Int(π)// πInteger 等于 3,所以被推測為 Int 類型
類型別名#
類型別名(type aliases)就是給現(xiàn)有類型定義另一個名字
typealias hello = Int
var a: hello = 5