窺探Swift之基本資料型別

2021-09-23 21:45:56 字數 2695 閱讀 9996

」中介紹了如何使用playground來學習swift語言。本篇部落格就使用playground來窺探swift語言。千里之行始於足下,當然了,除非你是坐的高鐵或者飛機。還是那句話從基礎開始吧,本篇部落格主要介紹一下swift的基本資料型別。swift中的資料型別可謂是百花齊放百家爭鳴,下面就來窺探一下swift中的基本資料型別。

一、swift中的變數和常量

1.關鍵字「let」

常量,顧名思義,常量的值是不可以被再次改變的,比如你給number賦乙個初始值"swift",那麼number從你給它賦值的那一刻就代表著"swift"。就像你從生下來就是男的或者女的,你不能從乙個真正的男的變成真正的女的,反過來也是不成立的。當然後天如果你去了趟泰國那就不算了,如果後天變性的,編譯器會報錯,說你這是人妖,是編譯不過去的。說著說著又跑偏了,言歸正傳,在swift中使用let關鍵字來建立乙個常量並賦初始值後,那麼該常量的值就不能被改變了,如果你在使用中嘗試著去改變它,那麼編譯器真的會報錯的。在oc和c++中可以用關鍵const來定義常量,而swift中使用的是let。

下面的**段定義乙個名為gender的常量,並且賦值為"我是男的",在playground的右邊會緊接著出來gender的值,下面一句是嘗試著給gender賦值,說你要去泰國那啥~在swift的世界裡是不允許你這麼做的,所以給你乙個錯誤「cannot assign to 'let' value 'gender'」,就是不允許你給gender再次賦值,用一句通俗易懂的話就是,不允許你去泰國那啥。這就是swift中的常量,一錘定音,一言既出,駟馬難追是let的風格。

2.關鍵字「var」

如果世界上什麼東西都是一成不變的,估計就生活不下去了對吧。不想當程式設計師的醫生不是好老闆,這些都是可以變得對吧,世界上一成不變的東西還是少的,大多數東西都在運動,都在變化,在swift的世界裡也是如此,變數的用處比常量要多的多。比如你現在是程式設計師,明天也要當老闆,如果這東西是常量,那完了,就做一輩子程式設計師吧,但是在現實生活中是可以變得,下面就是使用關鍵字var來定義乙個hopeme變數,並且賦上「我是程式設計師」,你勵志要做老闆,有一天你做了老闆,然後就變成了下面那句**,這在swift的世界中是可以的,所以編譯器是不會給error的。

3.關於資料型別的說明

細心的園友會注意到上面不管是定義常量或者變數怎麼沒給這些變數或者常量指定資料型別呢?難道swift像js或者php這些語言一樣是弱型別的?非也,並不是弱型別的,swift可以自動推斷資料型別,上面定義的都是string型別。下面這個例項,定義了乙個變數intnumber,並賦上初始值10,使用sizeofvalue()函式來檢視該變數所佔記憶體位元組數,使用sizeof()函式來檢視相應的資料型別所需儲存空間。更好的方法是在鍵入該變數時檢視提示的資料型別。

二、給變數顯式指定相應的資料型別

上面不管是宣告常量還是變數,都是有編譯器通過型別推斷來判斷資料的型別的,接下我們就要顯式的指定我們需要的資料型別。在swift中資料型別可謂是豐富多彩呢。

1.顯式宣告不同位元組的整數型別,在swift中允許你來指定資料儲存所需位元組數。當然int64是在64位系統上使用才佔64個位元組呢。

2.舉乙個簡單的生活中的例子:不同物種是不可能進行結合產生正常的後代的,如果你告訴編譯器馬+lv=?編譯器會報個錯,說你這是非法的,會產生乙個不正常的後代「errormessage = luo子」。不扯鹹蛋了,言歸正傳,在swift中是不允許不同的資料型別進行隱式運算的。不同資料型別的數字是不允許進行算術運算的,即使同為整型,如果儲存所佔位元組數不同,在swift中也是不允許對其進行算術運算的。swift語言說的官方一些是型別安全的,不同型別的資料是不允許直接進行算術運算的,下面的例項很好說明了這個問題。

3.swift對不同數制的也是有著很好的支援,為了可讀性,swift中允許你對較大的數進行分隔如下圖所示,0b表示二進位制,0o表示8進製,0x表示十六進製制。

三、swift中的浮點型

1.其他程式語言中也是有浮點型的了,下面的dmeo給出了不同型別的浮點型在記憶體中儲存時所需位元組數。在swift中預設是double型別。

2.下面的demo中給出類浮點型的計算,float型別的資料是不允許和double型別的資料直接進行運算的,還是那句話:swift中是不允許進行隱式型別轉換的。

3.下面是浮點數的指數表示形式,如下所示

窺探Swift之基本資料型別

中介紹了如何使用playground來學習swift語言。本篇部落格就使用playground來窺探swift語言。千里之行始於足下,當然了,除非你是坐的高鐵或者飛機。還是那句話從基礎開始吧,本篇部落格主要介紹一下swift的基本資料型別。swift中的資料型別可謂是百花齊放百家爭鳴,下面就來窺探一...

swift基本資料型別

int是整型 double和float是浮點型 bool是布林型 string是字串 array和dictionary集合型別 tuple 元組 元組可以讓你建立或者傳遞一組資料,比如作為函式的返回值時,你可以用乙個元組可以返回多個值 optional 可選 用於處理值缺失的情況 varstr he...

Swift 基本資料型別

main.swift 1switf 基本資料型別 created by lzxuan on 16 1 26.沒有main函式 跟指令碼語言很像 從上自下一次執行 語句 import foundation 定義函式 無參無返回值 func test1 執行函式中的 那麼需要呼叫函式 test1 2.資...