Swift學(xué)習(xí) -- 數(shù)據(jù)類型

Swift的數(shù)據(jù)類型介紹:

整型,浮點(diǎn)型,對(duì)象類型,結(jié)構(gòu)體類型,枚舉類型,共用體類型等等

下面主要介紹整型和浮點(diǎn)型。

整型:

  1. 有符號(hào)整型
Int:有符號(hào)4位整型(和平臺(tái)有關(guān),一般為4位,相當(dāng)于OC的NSInteger)(默認(rèn))
Int8:有符號(hào)8位整型
Int16:有符號(hào)8位整型
Int32:有符號(hào)8位整型
Int64:有符號(hào)8位整型
  1. 無(wú)符號(hào)整型
  UInt:無(wú)符號(hào)4位整型(和平臺(tái)有關(guān),一般為4位,相當(dāng)于OC的NSUInteger)
  UInt8:無(wú)符號(hào)8位整型
  UInt16:無(wú)符號(hào)8位整型
  UInt32:無(wú)符號(hào)8位整型
  UInt64:無(wú)符號(hào)8位整型

浮點(diǎn)型

Float:32位浮點(diǎn)型
Double:64位浮點(diǎn)型(默認(rèn))

類型推導(dǎo)

  • Swift是強(qiáng)類型的語(yǔ)言。
  • Swift中任何一個(gè)標(biāo)識(shí)符都要有明確的類型。

注意:在定義一個(gè)標(biāo)識(shí)符時(shí),有明確的賦值,則可以省略類型。
因?yàn)镾wift的類型推導(dǎo),可以根據(jù)賦值來(lái)推導(dǎo)出標(biāo)識(shí)符的類型。

let a : Int = 10 //無(wú)類型推導(dǎo)
//因?yàn)?0是Int(默認(rèn)),所以a是Int類型
let a = 10 // 類型推導(dǎo)

注意

//? 因?yàn)閙的類型沒(méi)有明確
var m 
m = 10 
//? 因?yàn)閙的類型明確
var m : Int
m = 10

//?特殊:默認(rèn)關(guān)聯(lián)在一起
let m : Int
m = 10
//?
let m : Int;
m = 10;

基本運(yùn)算

  • Swift中在進(jìn)行基本運(yùn)算時(shí),類型必須一致(因?yàn)镾wift中沒(méi)有像OC那樣的隱式轉(zhuǎn)換)
//OC 
//?
int a = 10;
float b = 20.1
int result =  a + b
//Swift
//?
let a = 10
let b = 1.01
let result = a + b
//?
let a = 10
let b = 1.01
let m = Int(b) //強(qiáng)制轉(zhuǎn)換
let result = a + m
  • 強(qiáng)制轉(zhuǎn)換
    格式: 類型(標(biāo)識(shí)符)
let a = 2.55
let b = Int(a)

注意
強(qiáng)制轉(zhuǎn)換不是四舍五入,而是直接取位,如Int(10.999) 的值為10。

  • 一些疑惑
//?
let a = 2.55
let b = Int(a)
//?
let view = UIView()
let btn = UIButton(view)
//?
let ban = view as UIButton
//猜想:Int()這種用于基礎(chǔ)類型,整型,浮點(diǎn)型
              as UIView 用于對(duì)象類型,結(jié)構(gòu)體類型等

如果大家有什么疑惑,或者文章有什么錯(cuò)誤的地方,請(qǐng)大家留言。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容