亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Swift > 正文

Swift內(nèi)置的數(shù)字類型及基本的轉(zhuǎn)換方法

2020-03-09 17:49:50
字體:
供稿:網(wǎng)友
這篇文章主要介紹了Swift內(nèi)置的數(shù)字類型及基本的轉(zhuǎn)換方法,是Swift入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
 

雖然編寫任何編程語言,需要使用不同的變量來存儲各種信息。變量不過是保留的內(nèi)存位置來存儲值。這意味著,當(dāng)創(chuàng)建一個變量,在內(nèi)存中會保留一些空間。

可能喜歡像存儲字符串,字符,寬字符,整數(shù),浮點數(shù),布爾等各種數(shù)據(jù)類型的信息。根據(jù)一個變量的數(shù)據(jù)類型,操作系統(tǒng)分配內(nèi)存,并決定什么可以存儲保留在存儲器。

內(nèi)置數(shù)據(jù)類型
Swift 為程序員提供內(nèi)置以及用戶定義的種類數(shù)據(jù)類型。 以下是聲明變量使用最頻繁的基本數(shù)據(jù)類型的列表:

Int 或 UInt - 這是用于整數(shù)。更具體地可以使用Int32,Int64來定義32或64位有符號整數(shù),其中作為UInt32或UInt64用來定義32或64位無符號整數(shù)的變量。 For example, 42 and -23.

  • Float - 這是用來表示一個32位浮點數(shù),一般用于使用較小的小數(shù)點數(shù)字。 例如:3.14159,0.1,和 -273.158。
  • Double - 這是用來表示一個64位浮點數(shù),用于非常大的浮點值。  例如: 3.14159, 0.1, 和 -273.158.
  • Bool - 這代表一個布爾值,真或假。
  • String - 這是有序字符集合。例如, "Hello, World!"
  • Character - 這是一個單字符字符串。例如, "C"
  • Optional - 這表示可以容納一個值或沒有任何值的變量。

有下列有關(guān)整數(shù)類型要點:

  • 在32位的平臺上,Int 大小與 Int32 的大小相同。
  • 在64位的平臺上,Int 大小與 Int64 的大小相同。
  • 在32位的平臺上,UInt 的大小與 UInt32 的大小相同。
  • 在 64 位的平臺上,UInt 的大小與 UInt64 的大小相同。
  • Int8, Int16, Int32, Int64 可以用來表示 8 Bit, 16 Bit, 32 Bit 和 64 Bit 形成有符號整數(shù)。

UInt8, UInt16, UInt32 和 UInt64 可以用來表示 8 Bit, 16 Bit, 32 Bit 和 64 Bit 形成無符號整數(shù)。
綁定值
下表顯示變量類型,需要多少內(nèi)存存儲此值在存儲器中,在這種類型的變量可以存儲最大值和最小值。

Swift內(nèi)置的數(shù)字類型及基本的轉(zhuǎn)換方法

類型別名
可以從現(xiàn)有類型使用typealias創(chuàng)建一個新的名稱。以下是使用簡單 typealias 的語法來定義新類型:

復(fù)制代碼代碼如下:

typealias newname = type

例如,下面告訴編譯器Feet 是 Int 的另一個名字:
復(fù)制代碼代碼如下:

typealias Feet = Int

現(xiàn)在,下面的聲明是完全合法的,并創(chuàng)建一個整型變量為 distance:
復(fù)制代碼代碼如下:

import Cocoa

 

typealias Feet = Int
var distance: Feet = 100
println(distance)


當(dāng)我們使用 playground 運行上面的程序,到以下結(jié)果。

 

100

類型安全
Swift 是一種安全的語言,這意味著,如果代碼的一部分需要一個字符串, 那么不能錯誤地傳遞一個int。

由于 Swift 是類型安全的,當(dāng)類型檢查時它執(zhí)行編譯代碼并標(biāo)志類型不匹配的錯誤。

復(fù)制代碼代碼如下:

import Cocoa

 

var varA = 42
varA = "This is hello"
println(varA)


當(dāng)我們編譯上面的程序它產(chǎn)生以下編譯時錯誤。
復(fù)制代碼代碼如下:

Playground execution failed: error: :6:6: error: cannot assign to 'let' value 'varA'
varA = "This is hello"

類型推斷
在它編譯代碼時,類型推斷使編譯器自動推導(dǎo)出特定表達(dá)式的類型, 簡單地通過檢查所提供的值。Swift 采用類型推斷制定出合適的類型如下。
復(fù)制代碼代碼如下:

 import Cocoa

 

// varA is inferred to be of type Int
var varA = 42
println(varA)

// varB is inferred to be of type Double
var varB = 3.14159
println(varB)

// varC is also inferred to be of type Double
var varC = 3 + 0.14159
println(varC)


當(dāng)我們使用 playground 運行上面的程序,得到以下結(jié)果。

 

423.141593.14159

Swift數(shù)字類型之間的轉(zhuǎn)換
Swift數(shù)字類型之間的轉(zhuǎn)換Swift是一種安全的語言,對于類型的檢查非常嚴(yán)格,不同類型之間不能隨便轉(zhuǎn)換。
一、整型之間的轉(zhuǎn)換
在C和Objective-C等其他語言中,整型之間有兩種轉(zhuǎn)換方法:
從小范圍數(shù)到大范圍數(shù)轉(zhuǎn)換是自動的;
從大范圍數(shù)到小范圍數(shù)需要強制類型轉(zhuǎn)換,有可能造成數(shù)據(jù)精度的丟失。
而在Swift中這兩種方法是行不通的,我們需要通過一些函數(shù)進(jìn)行顯式地轉(zhuǎn)換,代碼如下:

復(fù)制代碼代碼如下:

let historyScore:UInt8 = 90

 


let englishScore:UInt16 = 130


let totalScore = historyScore + englishScore  //錯誤 ①


let totalScore = UInt16(historyScore) + englishScore   //正確 ②


let totalScore = historyScore + UInt8(englishScore)  //正確 ③

 

上述代碼聲明和初始化了兩個常量historyScore和englishScore,我們把它們相加賦值給totalScore。如果采用第①行代碼實現(xiàn)相加,程序就會有編譯錯誤,原因是historyScore是UInt8類型,而englishScore是UInt16類型,它們之間不能轉(zhuǎn)換。
我們有兩種轉(zhuǎn)換方法。
一種是把UInt8的historyScore轉(zhuǎn)換為UInt16類型。由于是從小范圍數(shù)轉(zhuǎn)換為大范圍數(shù),這種轉(zhuǎn)換是安全的。代碼第②行UInt16(historyScore)就是正確的轉(zhuǎn)換方法。
另外一種是把UInt16的englishScore轉(zhuǎn)換為UInt8類型。由于是從大范圍數(shù)轉(zhuǎn)換為小范圍數(shù),這種轉(zhuǎn)換是不安全的,如果轉(zhuǎn)換的數(shù)比較大會造成精度的丟失。代碼第③行UInt8(englishScore)是正確的轉(zhuǎn)換方法。由于本例中englishScore的值是130,這個轉(zhuǎn)換是成功的,如果把這個數(shù)修改為1300,雖然程序編譯沒有問題,但是會在控制臺中輸出異常信息,這是運行期異常。
上述代碼中,UInt16(historyScore)和UInt8(englishScore)事實上是構(gòu)造器,能夠創(chuàng)建并初始化另外一個類型。二、整型與浮點型之間的轉(zhuǎn)換
整型與浮點型之間的轉(zhuǎn)換與整型之間的轉(zhuǎn)換類似,因此我們將上一節(jié)的示例修改如下:

復(fù)制代碼代碼如下:

let historyScore:Float = 90.6         ①

 


let englishScore:UInt16 = 130         ②


let totalScore = historyScore + englishScore  //錯誤         ③


let totalScore = historyScore + Float(englishScore)  //正確,安全    ④


let totalScore = UInt16(historyScore) + englishScore  //正確,小數(shù)被截掉 ⑤


上述代碼經(jīng)過了一些修改,第①行代碼historyScore變量類型是Float類型。第②行代碼englishScore變量還是UInt16類型。其中第③行代碼直接進(jìn)行了計算,結(jié)果有編譯錯誤。第④行代碼是將UInt16類型的englishScore變量轉(zhuǎn)換為Float類型,這種轉(zhuǎn)換是最安全的。第⑤行代碼是將Float類型的historyScore變量轉(zhuǎn)換為UInt16類型,這種轉(zhuǎn)換首先會導(dǎo)致小數(shù)被截掉,另外如果historyScore變量數(shù)很大,會導(dǎo)致運行期異常,這與整型之間的轉(zhuǎn)換是類似的。

 

 



注:相關(guān)教程知識閱讀請移步到swift教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
成人在线直播| 久久精品人妻一区二区三区| 午夜视频在线免费观看| 久草在线免费资源站| 欧美岛国激情| 欧美日韩亚洲综合一区二区三区激情在线| 欧美精品一区二区三| 欧美 中文字幕| 成人看片黄a免费看在线| 亚洲区综合中文字幕日日| 午夜视频免费播放| 一级片视频免费看| 亚洲欧美电影在线观看| 日本成人不卡| 日本中文在线播放| 精品久久在线观看| 亚洲精品国产动漫| 国产精品视频一区麻豆| 亚洲国产一区二区久久久777| 日韩av手机在线观看| 三级影片在线观看欧美日韩一区二区| 992tv成人免费影院| 日韩人体视频一二区| 日日夜夜人人| 日本高清视频网站www| 国产激情视频在线播放| 国产91对白在线观看九色| 一级特黄特色的免费大片| 国产美女性感在线观看懂色av| 国产成年人在线观看| 你懂的视频在线看| 18性欧美xxxⅹ性满足| 国产91精品久久久久久久| 亚洲电影一区二区| 日韩中文字幕影院| 日韩影视在线观看| www国产亚洲精品| 成人c视频免费高清在线观看| 精品国产一区二区三区无码| 欧美日韩1区2区3区| 免费av大全| 国产精品无码久久久久成人app| 91视视频在线直接观看在线看网页在线看| av在线最新| 久久国产毛片| 欧美jizzhd精品欧美满| 欧美日一区二区三区在线观看国产免| 国产一区二区视频免费在线观看| 日韩专区在线播放| 色偷偷男人天堂| 一级性生活大片| www.av91| www免费网站在线观看| 黑人巨大精品欧美一区二区桃花岛| 日韩成人在线电影| 中文在线二区| 明星乱亚洲合成图.com| 国产成人精品无码播放| 色呦呦呦在线观看| 男人的天堂一区二区| 99re久久最新地址获取| 在线视频资源站| 亚洲第一中文字幕| 激情自拍一区| 午夜精品视频在线观看一区二区| 综合精品一区| 国产91丝袜美女在线播放| 五月婷婷激情综合网| www深夜成人a√在线| 水蜜桃免费高清视频在线播放| 欧美一区二视频| 麻豆传媒视频在线观看免费| 亚洲香蕉在线视频| 日本少妇一级片| 欧美放荡的少妇| 91午夜交换视频| av一二三不卡影片| av在线免费播放网站| 免费看h的网站| yiren22综合网成人| 欧美在线视频第一页| 久久伊人资源站| 国产高清精品软件丝瓜软件| 这里只有精品久久| 美日韩丰满少妇在线观看| 欧美xxbbb1手交| 成人黄网18免费观看的网站| 亚洲最大av在线| 999精品视频在线观看| 4444欧美成人kkkk| 亚洲精品亚洲人成在线观看| av影视在线看| 亚洲激情校园春色| 国产二区三区在线| 久久99精品国产99久久6尤物| 日韩一区三区| 国产一区二区三区影视| 精品一区精品二区高清| 国产精品久久久久久久精| 亚洲视屏在线播放| jiyouzz国产精品久久| 免费观看日韩电影| av高清日电影| 青草草在线视频| 久久久国产综合精品女国产盗摄| 91麻豆精品国产91久久久| 亚洲国产欧洲综合997久久| 欧美成人高清视频在线观看| 国模吧精品视频| 91短视频在线| 国产一区二区无遮挡| 精品99在线视频| 国产精品久久久久9999高清| 榴莲视频成人app| 亚洲国产综合在线看不卡| 一本色道久久88综合日韩精品| 秋霞午夜在线观看| 久久一二三四| 一区二区三区高清视频在线观看| 久久国产福利| 色综合久久网女同蕾丝边| 欧美日韩在线观看不卡| ㊣最新国产の精品bt伙计久久| 一区二区视频国产| 97视频在线观看播放| 日本高清不卡的在线| 久久99精品久久久久久久久久| 国产精品久久91| 欧美日韩国产欧美日美国产精品| 亚洲人亚洲人成电影网站色| 天堂在线视频| 老太脱裤让老头玩ⅹxxxx| 欧美精品videos| 一级香蕉视频在线观看| 精品国内产的精品视频在线观看| 欧美精品一区二区性色a+v| 国产精品成人久久电影| 国产大屁股喷水视频在线观看| 久久久久久精| 国产又大又粗又爽| 久色乳综合思思在线视频| 国产一区二区中文| 亚欧精品一区二区三区| 欧美成人乱码一区二区三区| 欧美尤物一区| 手机免费看av| 亚洲蜜桃精久久久久久久| 在线免费看视频| 天天爱天天做天天爽| 国产麻豆一区二区三区精品视频| 久久久精品一区二区毛片免费看| 7m精品福利视频导航| 成人免费一区二区三区在线观看| 日韩精品不卡一区二区| 一本到三区不卡视频| 黄色成人在线免费观看| 国产一区二区麻豆| 97在线视频人妻无码| 日韩精品福利视频| 黄页网站在线观看视频| 欧美理论电影在线| 色999日韩自偷自拍美女| 毛片在线看片| 日韩有码在线播放| 亚洲素人一区二区| 成人午夜在线观看视频| 女教师淫辱の教室蜜臀av软件| 日本三级黄色大片| 日韩成人午夜影院| 欧美亚洲一区| 777奇米成人网| 国产精品超碰97尤物18| 国产成人a人亚洲精品无码| 日韩一区二区三区av| 国产一级粉嫩xxxx| 国产精品777777在线播放| chinesespank调教| 欧美视频一区二区在线观看| 国产麻豆乱码精品一区二区三区| 国产探花视频在线播放| 手机看片福利视频| 亚洲最大成人在线观看| 1024在线看片你懂得| 在线视频1区2区| 国产日本在线| 国产福利视频在线播放| 欧美成人精品一区二区三区| 日韩亚洲欧美一区二区三区| 国产91在线播放| 青青草国产精品一区二区| 国产黄色片网站| 欧美日韩国产精品一卡| 亚洲欧美日韩国产中文| 亚洲色图另类小说| 一区二区在线高清视频| 欧美日本一道本在线视频| av电影在线观| 全免费a级毛片| 欧美日韩黄网站| 尤物网站在线| 性欧美办公室18xxxxhd| 91www在线| 亚洲一区有码| 亚洲国产精品二区| 免费国产精品视频| 成人影院免费观看| 免费毛片一区二区三区| 高清视频一区二区三区| 精品久久久久久久久久久久久久久久久| 成人免费一区二区三区在线观看| 亚洲精品欧美精品| 国产成人精品无码播放| 亚洲一区二区三区四区av| 日本免费中文字幕在线| 欧美二区三区在线| 亚洲午夜精品| 伊大人久久香线焦宗合一75大| 你懂的免费网站| 亚洲品质视频自拍网| 国产精品888| 国产精品私人自拍| 欧美精品不卡| 国产一卡不卡| 欧美日韩一区二区三| 中文字幕人妻互换av久久| 久久久av网站| 一级黄色大片免费| 国产99久久久国产精品潘金| 亚洲第一页在线| 国产露脸91国语对白| 97超碰成人| 一个人看的免费网站www视频| a在线视频播放观看免费观看| 中国字幕a在线看韩国电影| 久久精品论坛| 老司机午夜精品99久久| 欧美精品一区二区三区蜜桃| 久久精品99国产精品酒店日本| 韩国一区二区在线播放| 俺来也官网欧美久久精品| 久久亚洲精精品中文字幕早川悠里| 午夜在线一区| 老司机免费视频| 午夜国产在线| 婷婷综合激情网| 亚洲日本护士毛茸茸| 欧美乱大交xxxxx另类电影| 91精品黄色片免费大全| 小说区亚洲自拍另类图片专区| 凹凸精品一区二区三区| 中文字幕色一区二区| 奇米亚洲午夜久久精品| 国产成人免费视频网站高清观看视频| 91麻豆精品91久久久久久清纯| 99精品在线播放| 一本一本久久a久久精品牛牛影视| 少妇欧美激情一区二区三区| 性欧美精品一区二区三区在线播放| 操碰免费视频| 成人激情久久| 91日韩在线视频| 天天做日日爱夜夜爽| 三级亚洲高清视频| 丰满人妻一区二区三区53视频| 成人77777| 日本国产欧美一区二区三区| 亚洲高清影视| 国产高清在线精品一区二区三区| 在线播放国产一区| 人妻丰满熟妇av无码区hd| 91亚洲国产成人精品一区二区三| 岛国大片在线免费观看| 亚洲国产aⅴ精品一区二区三区| 欧美性感一区二区三区| abab456成人免费网址| 成人444kkkk在线观看| 国产精品日韩电影| 久久夜色精品国产噜噜av小说| 黄页网址大全在线播放| 日韩视频在线一区二区三区| 欧美性猛交xxxxbbb| 日韩精品一级毛片在线播放| 欧美天堂影院| 国产精品欧美色图| 国产成人精品久久二区二区| 天堂网www在线中文天堂| 日韩中文一区二区三区| 亚洲视频网在线直播| 国产一区欧美二区| 在线伊人电影| 欧美激情欧美狂野欧美精品| 亚洲精品国产一区二| 成人午夜888| 亚洲美女视频| 中文字幕无线码一区| 国产女人伦码一区二区三区不卡| 最新日韩av| gogogo免费视频观看亚洲一| 无国产精品白浆免费视| 国产高清一区二区三区视频| 午夜精品久久久久99热蜜桃导演| 国产男女无套免费网站| 久久久久久久人妻无码中文字幕爆| 一区二区久久精品| 亚洲第一福利视频| 牛牛影视久久网| 999国产在线| 四虎成人精品永久免费av九九| 国产精品久久二区二区| 国产在线98福利播放视频| av岛国在线| 欧美日韩在线播放三区| 黄色av网站免费在线观看| 成人免费毛片东京热| 亚洲欧美欧美一区二区三区| 国产精品日韩精品欧美在线| 国模精品一区二区三区色天香| 国产精品免费观看高清| 亚洲高清av| 亚洲最新中文字幕| av先锋资源网| 国产伦精品一区二区三区高清版禁| av网站网址| 精品日韩视频在线观看| 嘿咻视频在线看| 欧美性视频在线| 中文字幕一区二区三区精品| 国产精品欧美亚洲777777|