03.Swift 數(shù)據(jù)類型,類型推導(dǎo),基本運算

@(〓〓 iOS-Swift語法)[Swift 語法]


iOS Swift 語法 底層原理內(nèi)存管理分析 專題:【iOS Swift5語法】

00 - 匯編
01 - 基礎(chǔ)語法
02 - 流程控制
03 - 函數(shù)
04 - 枚舉
05 - 可選項
06 - 結(jié)構(gòu)體和類
07 - 閉包
08 - 屬性
09 - 方法
10 - 下標(biāo)
11 - 繼承
12 - 初始化器init
13 - 可選項


目錄

  • 3.Swift的數(shù)據(jù)類型
    • Swift類型的介紹
    • Swift中的類型推導(dǎo)
    • Swift中基本運算

Swift類型的介紹

  • Swift中的數(shù)據(jù)類型也有:整型/浮點型/對象類型/結(jié)構(gòu)體類型等等
  • 先了解整型和浮點型
  • 整型
    • 有符號
      • Int8 : 有符號8位整型
      • Int16 : 有符號16位整型
      • Int32 : 有符號32位整型
      • Int64 : 有符號64位整型
      • Int : 和平臺相關(guān)(默認(rèn),相當(dāng)于OC的NSInteger)
    • 無符號
      • UInt8 : 無符號8位整型
      • UInt16 : 無符號16位整型
      • UInt32 : 無符號32位整型
      • UInt64 : 無符號64位整型
      • UInt : 和平臺相關(guān)(常用,相當(dāng)于OC的NSUInteger)(默認(rèn))
    • 浮點型
      • Float : 32位浮點型
      • Double : 64浮點型(默認(rèn))

// ----------------------------------------------------------------------------
// 1.整型(Int)和浮點型(Double)
// 定義一個Int類型的常量
let a : Int = 3
// 定義一個Double類型的變量
var b : Double = 1.2443

Swift中的類型推導(dǎo)

  • Swift是強類型的語言
  • Swift中任何一個標(biāo)識符都有明確的類型
  • 注意:
    • 如果定義一個標(biāo)識符時有直接進行賦值,那么標(biāo)識符后面的類型可以省略.
    • 因為Swift有類型推導(dǎo),會自動根據(jù)后面的賦值來決定前面的標(biāo)識符的數(shù)據(jù)類型.
    • 可以通過option+鼠標(biāo)左鍵查看變量的數(shù)據(jù)類型
    // ----------------------------------------------------------------------------
    // 2.類型推導(dǎo): 定義一個標(biāo)識符時如果有直接賦值,那么編譯器會根據(jù)后面賦值的類型推導(dǎo)出錢買標(biāo)識符的類型
    // 技巧: 可以通過 option + 鼠標(biāo)左鍵 查看一個標(biāo)識符的類型
    // m類型為Int
    let m = 20
    // n類型為Double
    let n = 3.14
    
    // 創(chuàng)建一個UIView
    let view = UIView()

Swift中基本運算

  • Swift中在進行基本運算時必須保證類型一致,否則會出錯.
    • 相同類型之間才可以進行運算
    • 因為Swift中沒有隱式轉(zhuǎn)換
  • 數(shù)據(jù)類型的轉(zhuǎn)化
    • Int類型轉(zhuǎn)成Double類型:Double(標(biāo)識符)
    • Double類型轉(zhuǎn)成Int類型:Int(標(biāo)識符)
// ----------------------------------------------------------------------------
// 3.Swift中的基本運算
// OC中有隱式轉(zhuǎn)換: 如果將一個整型和一個浮點型進行運算,會自動將整型轉(zhuǎn)成浮點型之后再進行計算
// 注意: 1.Swift中沒有隱式轉(zhuǎn)換  2.不同類型之間不能進行運算
let a = 10
let b = 3.14

// 錯誤寫法
// let c = a + b
// let c = a * b

// 正確寫法
let c = Double(a) + b
let d = a + Int(b)

// ------------------------------------------------------------------------
// Swift中的類型轉(zhuǎn)換
// 將Int類型轉(zhuǎn)成Double類型: Double(m)
let result = Double(m) + n

// 將Double類型轉(zhuǎn)換成Int類型: Int(n)
let result1 = m + Int(n)

// 將Double轉(zhuǎn)成Int
let result2 : Int = Int(Double(m) + n)

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

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

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