一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Swift - Swift 基本數(shù)據(jù)類型詳解總結(jié)

Swift 基本數(shù)據(jù)類型詳解總結(jié)

2021-12-26 17:41Lucky_William Swift

在我們使用任何程序語(yǔ)言編程時(shí),需要使用各種數(shù)據(jù)類型來(lái)存儲(chǔ)不同的信息。變量的數(shù)據(jù)類型決定了如何將代表這些值的位存儲(chǔ)到計(jì)算機(jī)的內(nèi)存中。在聲明變量時(shí)也可指定它的數(shù)據(jù)類型。所有變量都具有數(shù)據(jù)類型,以決定能夠存儲(chǔ)

Swift 基本數(shù)據(jù)類型

有以下幾種基本數(shù)據(jù)類型:

  • 整型
  • 浮點(diǎn)型
  • 布爾型
  • 元組
  • 可選值 Optional

1. 整型

?
1
2
var intType: Int = 11
print(intType) // 11

2. 浮點(diǎn)型

?
1
2
3
4
5
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. 布爾型

?
1
2
var boolType = true // or false
print(boolType) // true

4. 元組

允許不相關(guān)的類型自由組合為新的集合類型

?
1
2
3
4
5
6
7
8
9
10
11
12
// 定義元組,指定參數(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
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// 單個(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)化代碼的可讀性

?
1
2
3
4
// 為 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)制 表示

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// 自動(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)搜索服務(wù)器之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持服務(wù)器之家!

原文鏈接:https://blog.csdn.net/java_android_man/article/details/121056347

延伸 · 閱讀

精彩推薦
  • SwiftSwift教程之基礎(chǔ)數(shù)據(jù)類型詳解

    Swift教程之基礎(chǔ)數(shù)據(jù)類型詳解

    這篇文章主要介紹了Swift教程之基礎(chǔ)數(shù)據(jù)類型詳解,本文詳細(xì)講解了Swift中的基本數(shù)據(jù)類型和基本語(yǔ)法,例如常量和變量、注釋、分號(hào)、整數(shù)、數(shù)值類型轉(zhuǎn)換等...

    Swift教程網(wǎng)5162020-12-18
  • Swiftmac git xcrun error active developer path 錯(cuò)誤

    mac git xcrun error active developer path 錯(cuò)誤

    本文主要是講訴了如何解決在mac下使用git;xcode4.6的環(huán)境時(shí),出現(xiàn)了錯(cuò)誤(mac git xcrun error active developer path)的解決辦法,希望對(duì)大家有所幫助...

    Swift教程網(wǎng)2232020-12-16
  • SwiftSwift的74個(gè)常用內(nèi)置函數(shù)介紹

    Swift的74個(gè)常用內(nèi)置函數(shù)介紹

    這篇文章主要介紹了Swift的74個(gè)常用內(nèi)置函數(shù)介紹,這篇文章列舉出了所有的Swift庫(kù)函數(shù),內(nèi)置函數(shù)是指無(wú)需引入任何模塊即可以直接使用的函數(shù),需要的朋友可...

    Swift教程網(wǎng)5802020-12-19
  • SwiftSwift使用CollectionView實(shí)現(xiàn)廣告欄滑動(dòng)效果

    Swift使用CollectionView實(shí)現(xiàn)廣告欄滑動(dòng)效果

    這篇文章主要為大家詳細(xì)介紹了Swift使用CollectionView實(shí)現(xiàn)廣告欄滑動(dòng)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下...

    Stevin的技術(shù)博客12372021-01-13
  • SwiftSwift中轉(zhuǎn)義閉包示例詳解

    Swift中轉(zhuǎn)義閉包示例詳解

    在Swift 中的閉包類似于結(jié)構(gòu)塊,并可以在任何地方調(diào)用,下面這篇文章主要給大家介紹了關(guān)于Swift中轉(zhuǎn)義閉包的相關(guān)資料,需要的朋友可以參考下...

    小小小_小朋友11412021-12-26
  • SwiftSwift能代替Objective-C嗎?

    Swift能代替Objective-C嗎?

    這是我在網(wǎng)上上看到的答案,復(fù)制粘貼過(guò)來(lái)和大家分享一下,因?yàn)槲液秃芏嗳艘粯雍荜P(guān)心Swift的出現(xiàn)對(duì)Mac開(kāi)發(fā)的影響和對(duì)Objective-C的影響。...

    Swift教程網(wǎng)4412020-12-16
  • SwiftSwift實(shí)現(xiàn)多個(gè)TableView側(cè)滑與切換效果

    Swift實(shí)現(xiàn)多個(gè)TableView側(cè)滑與切換效果

    這篇文章主要為大家詳細(xì)介紹了Swift實(shí)現(xiàn)多個(gè)TableView側(cè)滑與切換效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下...

    乞力馬扎羅的雪雪5822021-01-08
  • Swiftswift where與匹配模式的實(shí)例詳解

    swift where與匹配模式的實(shí)例詳解

    這篇文章主要介紹了swift where與匹配模式的實(shí)例詳解的相關(guān)資料,這里附有簡(jiǎn)單的示例代碼,講的比較清楚,需要的朋友可以參考下...

    追到夢(mèng)的魔術(shù)師14382021-01-06
主站蜘蛛池模板: 草莓绿巨人香蕉茄子芭乐 | 国产1区二区 | 亚洲成人免费 | 国产精品自在线拍 | 毛片免费毛片一级jjj毛片 | 超级乱淫伦短篇小说做车 | 日韩一区二区三区精品 | 国产高清不卡码一区二区三区 | 青草视频免费 | 日韩精品一区二区三区中文版 | 亚洲精品国产成人7777 | 80s在线| 楚乔传第二部全60集免费观看 | 国产视频一二三区 | 国产剧情在线播放 | 精品免费国产 | 四虎影视地址 | 亚洲成A人片在线观看中文L | 我的奶头被客人吸的又肿又红 | 九色PORNY蝌蚪视频首页 | 好大好硬好深好爽想要之黄蓉 | 亚洲不卡视频在线 | 男人插曲女人下面 | 红楼梦黄色小说 | 大好硬好深好爽想要视频 | 美女撒尿无遮挡免费中国 | 精品一区二区三区高清免费不卡 | 午夜私人影院在线观看 | 日本性爱 | 俄罗斯一级淫片 | 黑人粗长巨茎小说 | 欧美精品日韩一区二区三区 | 国内精品 大秀视频 日韩精品 | 成人网久久 | 日本不卡在线视频高清免费 | 18日本xxxxxxⅹxx96 | 好大好爽好硬 | 王者荣耀瑶白色液体 | 日本黄色高清视频网站 | 国产真实一区二区三区 | 奇米影视7777 |