Swift筆記<一>常量變量及基本數(shù)據(jù)類型

1.導(dǎo)入框架
  • OC
#import <Foundation/Foundation.h>
  • Swift
import Foundation
2.常量與變量
  • OC中
int const a = 10;//常量
int a =10;//變量
  • Swift
    • 格式:
      • 變量 let 常量名稱:[常量類型] = 值
      • 變量 var 變量名稱:[變量類型] = 值
    • 注意點:
      • 可以是漢子或Unicode字符
      • []內(nèi)的類型可省略(swift中存在類型自動推導(dǎo)機制)
      • 值和類型必須相匹配否則報錯
      var a = 10;
      a = 10.1;//報錯提示Cannot assign value of type "Double" to type "Int"
      
      • Swift是類型安全的語言,必須是相同類型的參數(shù),才能參與運算
    • 開發(fā)選擇
      • 優(yōu)先選擇常量(比較安全的寫法),如果需要修改選擇變量
3.基本數(shù)據(jù)類型|類型轉(zhuǎn)換|類型推導(dǎo)
  • 整型
    • OC
      • 有符號:signed
        • char 8位
        • short int 16位
        • int 32位
        • long int 64位
        • NSInteger 跟平臺,CPU相關(guān)(32位平臺 = int ; 64位平臺 = long int)
      • 無符號:unsigned
        • char
        • short int
        • int
        • long int
        • NSInteger
    • Swift
      • 有符號
        • Int8 有符號8位整型
        • Int16 有符號16位整型
        • Int32 有符號32位整型
        • Int64 有符號64位整型
        • Int 跟平臺相關(guān)(默認相當于OC的NSInteger)
      • 無符號
        • UInt8 有符號8位整型
        • UInt16 有符號16位整型
        • UInt32 有符號32位整型
        • UInt64 有符號64位整型
        • UInt 跟平臺相關(guān)(常用相當于OC的NSUInteger)
  • 浮點型
    • OC
      • float
      • double
  • Swift
    • Float:32位浮點型
    • Double:64位浮點型(默認)
  • Bool類型
    • C/OC
      • C/OC并沒有真正的Bool類型
      • C語言的Bool類型非0即真
      • OC的Bool類型是typedef signed charBool
      • OC中的if條件可以是任何整數(shù)(非0即真)
    • Swift
      • 引入真正的Bool類型
      • Bool (true,false)
      • Swift的if條件只是一個Bool的值或則是返回的值是Bool類型的表達式
  • Swift 是類型安全的語言
    * Swift必須明確數(shù)據(jù)類型
    * 直接指明數(shù)據(jù)類型
    * 自動推導(dǎo)類型機制
    * 如果取值錯誤會直接報錯,OC不會
    * Swift會進行溢出檢查,OC不會
    * Swift沒有隱式類型轉(zhuǎn)換,不允許不同類型的數(shù)據(jù)類型進行計算(需進行類型強制轉(zhuǎn)換)
     let a = 10
     let b = 10.1
     a +Int(b)
     //或者
     Double(a)+b
    
4. 基本運算
  • OC
    • 有隱式轉(zhuǎn)換,所以允許不同類型的數(shù)據(jù)進行運算
  • Swift
    • 沒有隱式運算,必須指明類型后才能運算
    • 算數(shù)運算符 (+,-,*,/,++,--,--)
    • 賦值運算(=,+=,-=,*=,/=,!=)
    • 關(guān)系運算符(>,<,>=,<=,==,!=)
    • 邏輯運算符(! && ||) 基本用法和OC一致,唯一要注意的是Swift中的邏輯運算符只能操作Bool類型數(shù)值,而OC可以操作整型(非0即真)
?著作權(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)容