Swift 基本數(shù)據(jù)類型詳解總結(jié)
Swift 基本數(shù)據(jù)類型
有以下幾種基本數(shù)據(jù)類型:
- 整型
- 浮點(diǎn)型
- 布爾型
- 元組
- 可選值 Optional
1. 整型
var intType: Int = 11 print(intType) // 11
2. 浮點(diǎn)型
var floatType: Float = 3.14e3 // 10進(jìn)制中,e表示10的n次方,3.14 * (10^3) = 3140.0
print(floatType) // 3140.0
var floatType2: Float = 0x2p3 // 16進(jìn)制中,p表示2的n次方,2 * (2^3) = 16.0
print(floatType2) // 16.0
3. 布爾型
var boolType = true // or false print(boolType) // true
4. 元組
允許不相關(guān)的類型自由組合為新的集合類型
// 定義元組,指定參數(shù)名稱
var person: (name: String, age: Int) = ("William", 18)
print("name:", person.name, ", age:", person.age) // name: William , age: 18
// 元組不指定參數(shù)名稱,只指定類型
var city: (String, Int) = ("Shanghai", 200000)
// 使用下標(biāo)訪問(wèn)
print(city.0, city.1) // Shanghai 200000
// 分解元組
var (name, code) = city
print(name, code) // Shanghai 200000
5. 可選值 Optional
對(duì)普通類型進(jìn)行 Optional 包裝,實(shí)現(xiàn)對(duì)空值情況的監(jiān)控。類似于 Kotlin 中可空類型的處理,即在類型或?qū)嵗竺婕硬患訂?wèn)號(hào)。
- 如果是在實(shí)例后加問(wèn)號(hào),相當(dāng)于是在調(diào)用實(shí)例時(shí),對(duì)實(shí)例的值的空校驗(yàn)
- 如果是在類型后加問(wèn)號(hào),相當(dāng)于是指定當(dāng)前變量值可為空 nil
// 單個(gè) Optional 綁定,if-let 結(jié)構(gòu)
var obj: String? = "Wuhan"
if let temp = obj {
// 當(dāng) obj 不為 nil 時(shí),將 obj 賦值給 temp
print("hello", temp) // hello Wuhan
} else {
// 否則重新為 obj 賦值
obj = "hello, if-let"
print(obj)
}
// 多個(gè) Optional 綁定
var obj1:Int? = 1
var obj2:Int? = 2
if let temp1 = obj1, let temp2 = obj2, temp1 < temp2 {
// 當(dāng)全部不為 nil 且滿足子句 temp1 < temp2
print(temp1, temp2) // 1 2
} else {
print("obj1 or obj2 may be nil")
}
// Optional,可空,需要拆包
var obj4:Int?
obj4 = 3
// 編譯異常,沒(méi)有進(jìn)行拆包
// print(obj4 + 1)
// 以下會(huì)自動(dòng)拆包
var obj5:Int! // or Int
obj5 = 3
print(obj5 + 2) // 5
類型別名
類型別名,靈活使用可以優(yōu)化代碼的可讀性
// 為 String 類型指定別名 Weight,后續(xù)可以像使用 String 一樣使用 Weight typealias Weight = String var weight:Weight = "50kg" print(weight) // 50kg
自動(dòng)推斷、可讀性優(yōu)化,2/8/10/16 進(jìn)制 表示
// 自動(dòng)推斷類型 var a = 10, b:Int = 20, c = "hello swift" print(a, b , c) // 10 20 hello swift // 在數(shù)值前可加 0 進(jìn)行位數(shù)填充,可加入下劃線,增加可讀性 var number1 = 001.234 // 1.234 var number2 = 1_234 // 1234 // 打印多個(gè)值使用逗號(hào)分隔 print(number1, number2) // 1.234 1234 // 二進(jìn)制 var type_2 = 0b01 // 八進(jìn)制 var type_8 = 0o02 // 十進(jìn)制 var type_10 = 3 // 十六進(jìn)制 var type_16 = 0x04 print(type_2, type_8 , type_10, type_16) // 1 2 3 4
GitHub 源碼:BasicType.playground
到此這篇關(guān)于Swift 基本數(shù)據(jù)類型詳解總結(jié)的文章就介紹到這了,更多相關(guān)Swift 基本數(shù)據(jù)類型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Swift無(wú)限循環(huán)控件開(kāi)發(fā)
這篇文章主要為大家詳細(xì)介紹了Swift無(wú)限循環(huán)控件開(kāi)發(fā),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-07-07
SwiftUI使用Paths和AnimatableData實(shí)現(xiàn)酷炫的顏色切換動(dòng)畫(huà)
這篇文章主要介紹了SwiftUI使用Paths和AnimatableData實(shí)現(xiàn)酷炫的顏色切換動(dòng)畫(huà),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-05-05
Swift使用transform 實(shí)現(xiàn)重復(fù)平移動(dòng)畫(huà)效果
這篇文章主要介紹了Swift使用transform 實(shí)現(xiàn)重復(fù)平移動(dòng)畫(huà)效果,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-07-07
Swift中通知中心(NotificationCenter)的使用示例
這篇文章主要給大家介紹了關(guān)于Swift中通知中心(NotificationCenter)使用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-10-10

